[WIP] add eval functions for terminal

[x] add term_list()
[x] add term_getsize(buf)
[x] add term_sendkeys(buf, keys)
[ ] add term_wait(buf)
[x] add term_scrape(buf, row)
[ ] add term_start(command, options)
[x] add term_getjob(buf)

@brammool Why the number of arguments in term_setsize is only one? Just request current size? Also do you have plan for options in term_open? what behavior of term_wait?

Codecov Report

Merging #1871 into master will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1871      +/-   ##
==========================================
+ Coverage   75.06%   75.09%   +0.03%
==========================================
  Files          76       76
  Lines      125274   125235      -39
==========================================
+ Hits        94032    94044      +12
+ Misses      31242    31191      -51

Impacted Files
Coverage Δ

src/evalfunc.c
82.41% <ø> (ø)
:arrow_up:

src/if_py_both.h
75.56% <0%> (-0.46%)
:arrow_down:

src/ex_cmds.c
77.71% <0%> (-0.23%)
:arrow_down:

src/libvterm/src/screen.c
74.62% <0%> (+0.04%)
:arrow_up:

src/channel.c
83.55% <0%> (+0.04%)
:arrow_up:

src/gui.c
45.58% <0%> (+0.05%)
:arrow_up:

src/message.c
68.3% <0%> (+0.2%)
:arrow_up:

src/term.c
52.99% <0%> (+0.23%)
:arrow_up:

src/gui_gtk_x11.c
47.6% <0%> (+0.31%)
:arrow_up:

src/os_unix.c
57.49% <0%> (+0.38%)
:arrow_up:

... and 3 more

Continue to review full report at Codecov.

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

Yasuhiro Matsumoto wrote:

[ ] add term_list()
[ ] add term_getsize(buf)
[ ] add term_setsize(buf)
[ ] add term_sendkeys(buf, keys)
[ ] add term_wait(buf)
[ ] add term_scrape(buf, row)
[ ] add term_open(command, options)
[ ] add term_getjob(buf)

Nice, thanks.
A few remarks from a quick look:
perhaps term_start() is better than term_open()?
Like we have job_start().
The core of term_scrape() should be in terminal.c.
This also needs to handle multi-byte characters.
And soon we'll need the attributes (color, bold, underline, etc.).
term_sendkeys() should work like terminal_loop(), converting Vim keys to
terminal escape sequences.  Well, we could do both raw and converted,
but converted would be the most useful.
--
hundred-and-one symptoms of being an internet addict:
241. You try to look for Net Search even when you're in File Manager.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Yasuhiro Matsumoto wrote:

@brammool Why the number of arguments in term_setsize is only one?
Just request current size? Also do you have plan for options in
term_open? what behavior of term_wait?

Thanks for working on this!
The documentation needs to be updated, I only wrote some placeholders.
term_setsize() might interfere with 'termsize', need to think about
what to do here.  Perhaps we only need 'termsize'.
Options would probably a subset of what job_start() has.  "pty" would
default to "1", and some options must be forced, such as output must go
to the terminal.
term_wait() would be used in tests to wait for the terminal to have
updated according to the job running in it.  Probably it would wait for
the channel on the job to have caught up with buffered messages.
Need to write a first test to be able to try out what works.
--
hundred-and-one symptoms of being an internet addict:
240. You think Webster's Dictionary is a directory of WEB sites.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Options would probably a subset of what job_start() has.  "pty" would
default to "1", and some options must be forced, such as output must go
to the terminal.

I wonder that options should be subset of what job_start has. Is it to be
options to make terminal, right? For example:
call term_start(&shell, {"rows": 25, "cols": 80})

term_wait() would be used in tests to wait for the terminal to have
updated according to the job running in it.  Probably it would wait for
the channel on the job to have caught up with buffered messages.
Need to write a first test to be able to try out what works.

I guess this is an API which may block forever. Most easy way to do is
add global variable to set/reset to detect output at term_write_job_output.
Am I something wrong?

The core of term_scrape() should be in terminal.c.
This also needs to handle multi-byte characters.
And soon we'll need the attributes (color, bold, underline, etc.).

Do you mean it should return list which can get from vterm_screen_get_cell ?

The core of term_scrape() should be in terminal.c.
This also needs to handle multi-byte characters.
And soon we'll need the attributes (color, bold, underline, etc.).

Do you mean it should return list which can get from
vterm_screen_get_cell ?

Probably we will want that for checking attributes.
Perhaps return [char, attr, fg, bg] and have a nice way to deal with
attr, e.g.: term_getattr(attr, 'bold')
Using a dict would be nicer, but add a lot of overhead.
For text it would be easier to just get the text.
Perhaps we can use term_getline() for that.
--
Vi is clearly superior to emacs, since "vi" has only two characters
(and two keystrokes), while "emacs" has five.  (Randy C. Ford)
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I implemented term_scrape return following structure.
[
  {
    "bg": {
      "blue": 0,
      "green": 0,
      "red": 0
    },
    "fg": {
      "blue": 240,
      "green": 240,
      "red": 240
    },
    "char": "あ"
  },
  {
    "bg": {
      "blue": 0,
      "green": 0,
      "red": 0
    },
    "fg": {
      "blue": 240,
      "green": 240,
      "red": 240
    },
    "char": "い"
  },
  ...
]

The list which elements is located in fixed position makes user confusing, I guess.

Yasuhiro Matsumoto wrote:

I implemented term_scrape return following structure.
[
  {
    "bg": {
      "blue": 0,
      "green": 0,
      "red": 0
    },
    "fg": {
      "blue": 240,
      "green": 240,
      "red": 240
    },
    "char": "あ"
  },
  {
    "bg": {
      "blue": 0,
      "green": 0,
      "red": 0
    },
    "fg": {
      "blue": 240,
      "green": 240,
      "red": 240
    },
    "char": "い"
  },
  ...
]

The list which elements is located in fixed position makes user
confusing,  I guess.

The thing is that dictionarnies are very expensive, both in memory use
and time to create them.  Lists are cheaper.
Since this structure is used for every single cell, of which there would
be thousands, this can slow down the functions a lot.
Dictionaries are easier to read though.  Perhaps a good compromise is to
use one dictionary per cell, and do the rest with lists and strings.
It's common enough to have RGB, so we can use a list with [r, g, b].
So the result for one cell could be:
[{'bg': [0, 240, 0], 'fg': [3, 0, 255], 'char': 'Xcc', 'attr': 34]
The 'char' value is one character plus its composing characters.
The 'attr' value is a number, we can use a function to get out each
separate attribute, such as bold, underline, etc.
--
hundred-and-one symptoms of being an internet addict:
254.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

How about the format like #FFBBDD for fg/bg?

@brammool How about this?
[
  {
    "bg": "#000000",
    "fg": "#240240",
    "char": "M",
    "attr": 179
  },
  {
    "bg": "#000000",
    "fg": "#240240",
    "char": "i",
    "attr": 179
  }
  ...
},

Yasuhiro wrote:

@brammool How about this?
[
  {
    "bg": "#000000",
    "fg": "#240240",
    "char": "M",
    "attr": 179
  },
  {
    "bg": "#000000",
    "fg": "#240240",
    "char": "i",
    "attr": 179
  }
  ...
},

Yeah, that should work.  I would use "chars" instead of "char", to give
a hint that it might be more than one character.  Vterm can return up to
six.
--
If VIM were a woman, I'd marry her.  Slim, organized, helpful
and beautiful; what's not to like?     --David A. Rogers
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


Sticky session doesn't work with websocket

Do you want to request a feature or report a bug?
Bug
What did you do?
I wanted to load balance a websocket service and have the sticky session enabled. Each user open multiple websocket streams and they need to end up at the same place (not my code, not something we can change right now).
I use docker but I tried to configure manually the load balancing using a file with rules and I had the same result.
I created a simple websocket echo server to easily test the feature. See configuration below.
What did you expect to see?
I expect my websocket connexion to be sticky.
What did you see instead?
The sticky session cookies is not created and the session is not sticky. It works great for non websocket services.
Http request:
GET ws://www.mydomain.com/ws-echo HTTP/1.1
Host: www.mydomain.com
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket
Origin: http://www.mydomain.com
Sec-WebSocket-Version: 13
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.170 Safari/537.36
DNT: 1
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9,fr-CH;q=0.8,fr;q=0.7
Cookie: test-cookie=whatever
Sec-WebSocket-Key: zBL1pMw2BV/LQ4TCImZRYw==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
Sec-WebSocket-Protocol: control

Http response:
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: zDU6V6kSaLkVeBY3l7ZyNFFMEcI=
Sec-Websocket-Protocol: data
Server: WebSocket++/0.7.0

The dashboard shows the stickiness as enabled:

Output of traefik version: (What version of Traefik are you using?)
Version:      v1.6.1
Codename:     tetedemoine
Go version:   go1.10.2
Built:        2018-05-14_07:16:56PM
OS/Arch:      linux/amd64

What is your environment & configuration (arguments, toml, provider, platform, ...)?
logLevel = "INFO"
defaultEntryPoints = ["http"]

[api]
  [api.statistics]
    recentErrors = 100

[file]
watch = true
filename = "/etc/traefik/rules.toml"

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "docker.local"
watch = true
exposedbydefault = false

[entryPoints]
  [entryPoints.traefik]
  address = ":8082"

  [entryPoints.http]
  address = ":80"

test websocket echo server
version: '3'
services:
  ws:
    image: gaetancollaud/websocket-echo-server
    labels:
      - "traefik.enable=true"
      - "traefik.frontend.rule=PathPrefix:/ws-echo"
      - "traefik.port=8080"
      - "traefik.backend.loadbalancer.stickiness=true"
      - "traefik.backend.loadbalancer.stickiness.cookieName=LB_TRAEFIK"

If applicable, please paste the log output in DEBUG level (--logLevel=DEBUG switch)
This is the log just after I started my container We can see that the sticky session is enabled with the cookie name LB_TRAEFIK: Sticky session with cookie LB_TRAEFIK.
time="2018-05-17T12:44:14Z" level=debug msg="Provider event received {Status:start ID:545f5ffa9672abc6ccf7d015097d36f334f5510106d2fc4a94eef8e9592d70a6 From:gaetancollaud/websocket-echo-server Type:container Action:start Actor:{ID:545f5ffa9672abc6ccf7d015097d36f334f5510106d2fc4a94eef8e9592d70a6 Attributes:map[com.docker.compose.version:1.19.0 com.docker.compose.service:ws traefik.docker.network:dockerdev_backend com.docker.compose.config-hash:891a6338d453fe2d40981f41319de6b4c34c021407f0f757672e96e7e38c62fb com.docker.compose.container-number:1 image:gaetancollaud/websocket-echo-server name:websocketechoserver_ws_1 traefik.backend.loadbalancer.stickiness:true traefik.backend.loadbalancer.stickiness.cookieName:LB_TRAEFIK traefik.enable:true traefik.port:8080 com.docker.compose.oneoff:False com.docker.compose.project:websocketechoserver traefik.frontend.rule:PathPrefix:/ws-echo]} Scope:local Time:1526561054 TimeNano:1526561054641414841}"
time="2018-05-17T12:44:14Z" level=debug msg="originLabelsmap[com.docker.compose.project:websocketechoserver com.docker.compose.service:ws com.docker.compose.version:1.19.0 traefik.backend.loadbalancer.stickiness.cookieName:LB_TRAEFIK traefik.docker.network:dockerdev_backend traefik.port:8080 com.docker.compose.config-hash:891a6338d453fe2d40981f41319de6b4c34c021407f0f757672e96e7e38c62fb com.docker.compose.container-number:1 com.docker.compose.oneoff:False traefik.backend.loadbalancer.stickiness:true traefik.enable:true traefik.frontend.rule:PathPrefix:/ws-echo]"
time="2018-05-17T12:44:14Z" level=debug msg="allLabelsmap[:map[traefik.backend.loadbalancer.stickiness:true traefik.enable:true traefik.frontend.rule:PathPrefix:/ws-echo traefik.backend.loadbalancer.stickiness.cookieName:LB_TRAEFIK traefik.docker.network:dockerdev_backend traefik.port:8080]]"
time="2018-05-17T12:44:14Z" level=debug msg="Filtering disabled container /vpdev-traefik"
time="2018-05-17T12:44:14Z" level=debug msg="originLabelsmap[com.docker.compose.project:websocketechoserver com.docker.compose.service:ws com.docker.compose.version:1.19.0 traefik.backend.loadbalancer.stickiness.cookieName:LB_TRAEFIK traefik.docker.network:dockerdev_backend traefik.port:8080 com.docker.compose.config-hash:891a6338d453fe2d40981f41319de6b4c34c021407f0f757672e96e7e38c62fb com.docker.compose.container-number:1 com.docker.compose.oneoff:False traefik.backend.loadbalancer.stickiness:true traefik.enable:true traefik.frontend.rule:PathPrefix:/ws-echo]"
time="2018-05-17T12:44:14Z" level=debug msg="allLabelsmap[:map[traefik.docker.network:dockerdev_backend traefik.port:8080 traefik.backend.loadbalancer.stickiness:true traefik.enable:true traefik.frontend.rule:PathPrefix:/ws-echo traefik.backend.loadbalancer.stickiness.cookieName:LB_TRAEFIK]]"
time="2018-05-17T12:44:14Z" level=debug msg="Configuration received from provider docker: {\"backends\":{\"backend-ws-websocketechoserver\":{\"servers\":{\"server-websocketechoserver-ws-1\":{\"url\":\"http://<IP_ADDRESS>:8080\",\"weight\":1}},\"loadBalancer\":{\"method\":\"wrr\",\"stickiness\":{\"cookieName\":\"LB_TRAEFIK\"}}}},\"frontends\":{\"frontend-PathPrefix-ws-echo-0\":{\"entryPoints\":[\"http\"],\"backend\":\"backend-ws-websocketechoserver\",\"routes\":{\"route-frontend-PathPrefix-ws-echo-0\":{\"rule\":\"PathPrefix:/ws-echo\"}},\"passHostHeader\":true,\"priority\":0,\"basicAuth\":[]}}}"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend frontend-PathPrefix-ws-echo-0"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend frontend-PathPrefix-ws-echo-0 to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route route-frontend-PathPrefix-ws-echo-0 PathPrefix:/ws-echo"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend backend-ws-websocketechoserver"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Sticky session with cookie LB_TRAEFIK"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server-websocketechoserver-ws-1 at http://<IP_ADDRESS>:8080 with weight 1"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend angular"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend angular to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/angular,/sockjs-node"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend angular"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server1 at http://www.mydomain.com:4200 with weight 0"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend audit"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend audit to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/audit-api"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend audit"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server1 at http://www.mydomain.com:8087 with weight 0"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend base"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend base to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/"
time="2018-05-17T12:44:14Z" level=debug msg="Reusing backend angular"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend keycloak"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend keycloak to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/auth"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend keycloak"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server1 at http://www.mydomain.com:8086 with weight 0"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend streamedian"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend streamedian to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/streamedian,/ext-lib"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend whitelabel"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server1 at http://www.mydomain.com:8080 with weight 0"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend test"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend test to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/test"
time="2018-05-17T12:44:14Z" level=debug msg="Creating backend test"
time="2018-05-17T12:44:14Z" level=debug msg="Creating load-balancer wrr"
time="2018-05-17T12:44:14Z" level=debug msg="Creating server server1 at http://www.mydomain.com:8081 with weight 0"
time="2018-05-17T12:44:14Z" level=debug msg="Creating frontend whitelabel"
time="2018-05-17T12:44:14Z" level=debug msg="Wiring frontend whitelabel to entryPoint http"
time="2018-05-17T12:44:14Z" level=debug msg="Creating route test_1 PathPrefix:/wl"
time="2018-05-17T12:44:14Z" level=debug msg="Reusing backend whitelabel"
time="2018-05-17T12:44:14Z" level=info msg="Server configuration reloaded on :8082"
time="2018-05-17T12:44:14Z" level=info msg="Server configuration reloaded on :80"

I have come across the same issue and conclusion. With some guidance, I could help out with a PR.

I've reproduced the issue.
It seems that the problem comes from vulcand/oxy that ignores existing headers in the upgrade.
https://github.com/vulcand/oxy/pull/137

Hi @emilevauge, any target release of traefik that will embed vulcand/oxy#137 fix?
Thanks!

@daniellavoie with pleasure, if you make it, that would be on branch 1.6 :)

Oh, sorry guys, didn't see your messages ...

Closed by #3425.

I can confirm that since 1.6.3, the sticky cookie is correctly sent in the websocket response. Thanks guys !


Converting .ply to .las file

How can convert a .ply to potree format?
From the examples and implement I infer that a .las file is required to visualize a point cloud on Potree

You can load it in cloud compare and then save it as las, for example: https://www.danielgm.net/cc/
Cloud compare also has a command line mode that might be able to convert the point cloud.


--playback-logo-image not working...

Hi,  I have set up the CastReceiver and published it to surge. It is showing correctly when using the web sender project, apart from this issue - the playback-logo-image is not showing up on the while playing on the device. I've tried using the same image as a watermark in the css file and it shows correctly then. Any ideas?
Cast firmware version: 1.56.275994

Alan, this repository tracks bug with the sample receiver app. To better address your issue please file a bug in the cast issue tracker https://cast.google.com/publish/#/support . Ensure that you are following all of the steps provided in the styling guide. If you are still having issues please do file a bug.


Added supersig pallet to Kabocha-0.1.3

@gdnathan it doesn't look like pallet-supersig has been added as impl pallet_supersig... or added to construct_runtime!. Also please check if mint_with_fee is added in lib.rs correctly.

forgive me it has, ignore above, was looking at the incorrect branch.

The cargo.toml is still linked to old repo.
https://github.com/gdnathan/kabocha-network-parachain/blob/fcfc237994c8a15e06c37108635815fb7b3bbc9d/runtime/Cargo.toml#L26

@gdnathan do we need to add pallet-supersig/std?
https://github.com/gdnathan/kabocha-network-parachain/blob/fcfc237994c8a15e06c37108635815fb7b3bbc9d/runtime/Cargo.toml#L156

adding pallets will be for 0.1.9, closing this as it is out of date


$timeout is not defined

Hi,
I get this:
I/chromium( 5033): [INFO:CONSOLE(8)] "Uncaught ReferenceError: $timeout is not defined", source: file:///android_asset/www/lib/ngCordova/dist/ng-cordova.min.js (8) on Android when running crosswalk 10.
My app freezes up and becomes totally unusably slow when I try to input any text. It only happens on Android 4.1.2 and 4.1.1 from what I can see.
Any ideas?
Kindly,
Johann

+1 for me too

Could you try using the un-minified ng-cordova.js file, so that I can see exactly where the error is?

I had the same problem, but it looks like it was solved in 0dc3b651e980aeb591572949dfd8e301e5b04d76


[Mobile] Copy/Paste/SelectAll tooltip doesn't work in readOnly mode

Relevant code here

Hmm... I seem unable to repro the issue.
I have Copy option in readonly mode

Our company has the same problem as described above. Can you help with this?

Hmm... I seem unable to repro the issue. I have Copy option in readonly mode

We are bit supposed to paste things in readOnly mode.

Thank you for the report, this issue has been open for a while and since there are no interactions with it, we had to close it
but if you still facing this issue, or other issues or you have any other questions, feel free to contact us anytime you want.


Consider hiding RPL_WHOISHOST

<GL|ovd> As a precursor to ircd cloaking, have you considered hiding the "is connecting from *@whatever" whois line to non-opers?
<mad> Don't most ircds only hide that if clocking is enabled?
<GL|ovd> No.
* [GL] (~GL@fall.off.the.podium.ru): move along, nothing to see here!
* [GL] #\ #o #k #| #test
* [GL] k.notroll.net :keeping IRC safe since 1912 ;)
* [GL] is using a secure connection
* [GL] is using modes +iz
* [GL] is connecting from<EMAIL_ADDRESS>2600:3c01:e000:12c::
* [GL] idle 00:00:01, signon: Fri Jul  1 21:39:37
* [GL] is logged in as GLolol
* [GL] End of WHOIS list.
<mad> Then how are you supposed to know your friends' IPs?
<GL|ovd> Wow?
<GL|ovd> IRCds that support vHosts will generally stop showing that line when a vHost is applied.
<GL|ovd> Or not show it at all.
<GL|ovd> Because if uncloaked you can use dns, right?
<mad> When a vhost is applied...
<mad> So, I need to make it hide it if $user->cloak != $user->host
<GL|ovd> That's one way.
<GL|ovd> I THINK that's how charybdis does it.
<GL|ovd> Unreal and InspIRCd just hide it for all non-opers, if I remember correctly.
<mad> Well, I want to do it how charybdis does.
<GL|ovd> LOL
<mad> The way they do things is usually the most sensible.

I want to make it configurable whether to hide it all the time to non-opers (without some flag). Default behavior will be to hide it only when a vhost is applied.

let the record show that these are fake logs


Add Docker support

User story
As a user of this project, I want to be able to easily deploy and manage this project.
Acceptance criteria

[ ] Users can deploy the project with docker
[ ] environment variables configurable in docker compose

Running into an issue where building wants to pre-render the pages but there will be no api domain, so this causes the build to fail.
Disabling pre-rendering slows delivery times down significantly. Will need to think on this.


[1.16.4] Carts not recognizing saddled animals automatically

I coulda swore I did this already but maybe not.
As of mod version 1.1.0, the mod is not automatically detecting rideable modded animals and they have to be manually added to the configuration file. Such examples include the horses from Realistic Horse Genetics or the cows from Genetic Animals, though other players in the latter's discord says that it did it automatically for them.
Remaking the config file did nothing to fix the issue. Even now I had to go find the mob ID for the genetic horses to add cart functionality. I don't know what's causing it to not recognize rideable mobs.

Thanks for reporting!
I've tested with RHG and it works automatically for me via summoning horse_colors:horse_felinoid and taming it.

I'm having this issue now as well, I'm not sure what is causing it as previously it was working fine, all the animals I had entered into the config were tested and worked. I've just now regenerated my config file in an attempt to fix it and the issue persists on both Singleplayer and Multiplayer.
My config had the following, any glaring errors you notice? Though it worked before so I'm not sure why it would suddenly stop working... is possible the keybind changed somehow?
pull_animals = ["horse_colors:horse_felinoid", "eanimod:enhanced_cow", "betteranimalsplus:reindeer", "eanimod:enhanced_llama", "eanimod:enhanced_mooshroom", "minecraft:skeleton_horse", "minecraft:zombie_horse", "eanimod:enhanced_moobloom"]


Unit test for IndexGeneratorJob

Unit test for IndexGeneratorJob

@xvrl do you know how coveralls coverage can decrease from adding a unit test?

@cheddar Coveralls does funky things sometimes. It appears to compare to the latest number it has, which can be a different branch if master failed. Numbers across JDK versions are also different, and sometimes it seems to compare only one of the numbers with the average. In this case, the link shows that it never got the numbers for the JDK 7 build, so it only used the JDK 8 numbers.

:+1:
As a general comment: If you have any good ways to test failure or error cases that would be awesome. (Does not need to block this PR though)


Add selection parameter to vscode.open command

Allow extensions to specify text to select when opening a document via the vscode.open command.

Not a fan. The open command is meant to be generic, opens webpages etc, etc. @nicksnyder Why can't you use the APIs we offer for this?

What APIs are you referring to? I scanned through vscode.d.ts and didn't see another way to open a text document with a selection (from an extension), but I may have missed something.

This could also be implemented as a brand new API/command if you are worried that the open command shouldn't be used in this way.

Seems like adding this option to the showTextDocument api would be a better alternative than vscode.open

It's two steps,(1) call showTextDocument and (2) set the selection on the editor it returns. I don't see justifying new API that combines there two calls

Ah, I didn't realize you could just assign to editor.selection. No need for this.


Disable sending of non eip155 replay protected tx by default

Geth recently implemented this change here: https://github.com/ethereum/go-ethereum/pull/22339. It would be nice if Besu would also disable sending of non EIP155 transactions by default (see reasoning in linked PR).

Thanks Rene for the report. I believe this is a straightforward change and should be implemented by Besu as well. We can adopt a flag like Geth did to allow non EIP155 transactions, but by default they should be forbidden.


Element has inner text when it contains svg

Cause it's not a good idea to call hasInnerText on element which contains svg somewhere in IE11.
This fixes issue when clicking EDIT NOTE freezes the browser when note contains snippets on the last line near the end of the note.

@mikekreeki Is there any link with further details pls? I think we should reference it in the source.

@LeZuse There's not I think, cannot this PR serve as an explanation?

Thanks! 🚀


pull request for e2e test at 11/28/2016 16:56:05

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


changes need in html and css

the size of icons in the facts section are not of equal size and shapes. can I make necessary changes in code @rexyagami ?

@sanket2000sonavane yes you can, there are some hints in the CSS file too you can find that it will make your work easier.  Good Luck

Will you give me chance to do this .


injectThemePath should filter all html files

Can you please provide more details about what you are looking for with this?  What is the use case?

Here, the method, injectThemePath, only works on ${paths.staging.stagingPath}/index.html.
https://github.com/oracle/oraclejet-tooling/blob/12b305e/lib/indexHtmlInjector.js#L188
It should scan all html files recursively under ${paths.staging.stagingPath}.


Include checks to prevent users from responding to acknowledged or rejected messages in the fix message types

checks in session logon & logout, quote, market data, orders


Build Action: Copy Task

As an EaW Mod Developer
I want to be able to specify a copy task in the build configuration that copies files or whole sub directory trees from a path relative to the build configuration file to a target directory relative to the build configuration file.

[x] AC1: The Copy Task accepts a single relative source path.

[ ] AC1a: The source path has to be a directory, filtering by file has to be done with the file filter (AC4).

[x] AC2: The Copy Task accepts a single relative target path.

[x] AC2a: If the target path does not exist, the copy task will create it.
[x] AC2b: If the target path does exist and duplicate files are present, the copy task will overwrite these files.
[ ] AC2c: The target path has to be a directory.

[x] AC3: The Copy Task can either copy the content of a single directory or a whole sub directory tree.
[x] AC4: The Copy Task accepts a file filter that can be used to filter files or file types according to the specification provided here.

That works for me as long as its well documented - in my build tool I had a different action type for copying files to highlight the difference for the user - not highlighting that (basically getting rid of AC1a) just needs to be documented then.

Although I just realised, we might have to update the XSD to allow those file path alternatives, I think the current version has the validation with those criteria in mind.


Check gettls

I've created a branch tweag-patchset identical to fd/check-gettls. Is it good to use instead of master?

Rebased onto master.


[FEA] Add a warning, if embedding tables are not used in merlin models

🚀 Feature request
As a user, I can provide custom configs to the embedding_initalizer. However, the input data schema does not tag the column names as ITEM / USER features, then the model will not create embeddings and the configurations are not used.
We should throw a warning, if the configs are not used
    embeddings_initializers={
                             "emb1": mm.TensorInitializer(emb1), #,trainable=False
                             "emb2": mm.TensorInitializer(emb2)#,trainable=False
    }

@bschifferer can you create a PR for that? can I assign this to you?


Use API commit hash as api query cache key

Sha hash from https://api.github.com/repos/beefyfinance/beefy-api/commits/master

Quick and dirty fix for https://github.com/beefyfinance/beefy-app/issues/415

Maybe use prod branch instead of master?

Good point @JordanRaphael, updated to use prod


Remove BASE_DIR parsing for settings

settings.yaml being parsed from a base directory has issues when being installed from pip.  The user must now pass a settings_file path to goosebit when running.
With these changes, gooseBit should be run with python -m goosebit [settings_file].  There is also now help information with python -m goosebit --help.
Fixes: #103

Also note, settings_file has to be optional, because tests will break otherwise.  All settings should have a valid default.

I don't think this is going into the right direction. What if you want to run the service with e.g. gunicorn together with a settings file?
I would rather see the app search for a system-wide file (e.g. in /etc) and maybe the current directory. This can be made portable with e.g. the platformdirs package.

Fair enough.  Closing because I dont think this makes much sense then


Add Companies' rating

Feature request

[x] I have looked at all the other requests before I submitted this issue

Summary
Add the option to rate with stars a registered company
Suggested solution(s)
Use PrimeVue Rating component to implement this feature

Fixed by #4.


RHIROS-404 fixed rule_id & keys in the seed file

@r14chandra - From reviewer POV, would it make more sense to push this change in same PR - https://github.com/RedHatInsights/ros-backend/pull/146?

Closing this PR. Adding the commit in this PR


Auto completion for imports

I tried to autocomplete imports:

I think, it should auto complete to a - and then list files in the current directory - and offer the other keywords.

Thank you for the suggestion, this definitely would be usable!
Schema-related suggestions are not implemented for now. I hope, your request will be fulfilled when I'll ship that feature.


log: refactor logging to enhance clarity

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Repeatedly declaring thelog := ctrl.LoggerFrom(ctx)in multiple functions appeared redundant and cluttered the codebase.
This PR streamlines the logging setup by initializing the logger once in the manager structures for various CRDs and reusing it, promoting cleaner and DRY (Don't Repeat Yourself) code.
- Added a logger variable in the manager structures for different CRDs.
- Initialized this logger only once in the primary Reconcile function.
- Removed redundant logger declarations in other functions, leveraging the centrally initialized logger.
I've reviewed and refactored all applicable sections of the project  to ensure consistency and comprehensive application of this change. Then leaving sections untouched where refactoring was not feasible.
Since the LoggerFrom method retrieves predefined values injected into context.Context for contextual logging, see the link for reference.
This PR includes the following changes:

Added log := ctrl.LoggerFrom(ctx).WithValues("xxx", req.NamespacedName) at the beginning of each Reconcile function. This ensures that any subsequent log declarations can be simplified to log := ctrl.LoggerFrom(ctx), and all log messages will include the request's .WithValues("xxx", req.NamespacedName).

Due to the change in step 1, some redundant log information has been removed.

Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

refactor logging to enhance clarity

current method is not t a safe way, because we may run Reconcile concurrently
since the LoggerFrom method retrieves predefined values injected into context.Context for contextual logging. see https://github.com/kubernetes-sigs/controller-runtime/blob/aa53499ab7df3684e412a5288a324c67603000cd/alias.go#L143-L150
we still can Initialized this logger with .WithValues("backup", req.NamespacedName)  only once in the primary Reconcile function

@hzxuzhonghu this pr has been rewrrite


added --redefine to namespace to redefine class namespace + fixed err…

issue #1315

Warning 30 needs to be adusted to say Ignored attempt to redefining the namespace of class {0} to {1} . Use --redefine to force this'; done

A --redefine option following the namespace needs to be added to allow redefinitions. done

A - option for the name of the namespace needs to be added to cancel the current namespace specification done

Examples need to be fixed so those with hidden layout no longer specify error 30. not yet

The following example shows the differences:
class Z{}

namespace x;
class B{}

class C{m;}

namespace u --redefine;

class C{}
class J {};

namespace y ;
namespace -;

class C{h;}
namespace l;
class C{x ;}
class K{}

namespace -;

Classes Z and K should be in package l
Class B should be in package x
Classes C and J should be in package u
Package y should contain no classes
A warning at line 19 should appear to suggest redefinition of namespace for class C:
 Warning on line 19 : Ignored attempt to redefining the namespace of class C to l . Use --redefine to force this. More information (30)

Documentation should also be modified.

@fjtheknight  I would expect the following code to put X outside of any namespace; Y in namespace p, and Z outside of any namespace. But all are in namespace p. The namespace -; doesn't seem to be working as expected.
class X {}

namespace p;
class Y {}

namespace -;
class Z {};

Also, in the example you gave, class Z shouldn't be in any namespace, because line 21 namespace -' should prevent the namespace from being applied to any classes in the diagram code.

@TimLethbridge As of now Umple puts classes that aren't in any namespace in the last detected namespace by default. So this should be changed.
cruise.umple/src/UmpleInternalParser_CodeClass.ump line 1195

@fjtheknight So we discussed and I think you understand. Yes, Umple should continue to put classes that aren't in any namespace in the last detected namespace. But in the new setup namespace - would cancel the last detected namespace.

@TimLethbridge namespace -; now cancels the last namespace.

There is a small issue however (might not be an issue):

namespace y ;
class H{}
namespace -;
namespace l;
class F {};
namespace -;

Here the first namespace -; is not necessary, but because nothing was added between namespace - and namespace l, we will get a warning:
Declared namespace l was not used before declaring l.
The right way to write this code is
namespace y ;
class H{}
namespace l;
class F {};
namespace -;

Should this be considered an issue?

Adding namespace -; at the end of the code will prevent the warning message due to hidden code for layout editor. Should we expect the user to add namespace -; whenever a namespace is used in the project or should we add one by default at the beginning of the layout code?

@fjtheknight You are right. The error 31's that appear are not valid. In the case you cited, there should be no such warning, as there should be no active namespace,
The following code produces two such problems.
namespace y ;
class H{}
namespace -;
namespace g;
namespace l;
class F {};
namespace -;

And the following code, even in the original, before your changes, raises this erroneous warning. It should say Declared namespace g was not used before deglaring I.
namespace y ;
class H{}
namespace g;
namespace l;
class F {};

If this is a trivial fix, then fix it in this PR. Otherwise raise a new separate issue, assign yourself, reference this PR in ot and create a new PR for the new issue.
Regarding whether namespace -; should appear at the start of the diagram code. The answer, in my opinion is that this is probably the best thing to do.
I notice that the end_of_model string is defined at umple_page.js:18
I suggest that the correct place to change this is umple_page:722 which currently is
  var umpleCode = modelCleaned + Page.modelDelimiter + positioning;

this might perhaps be changed to something similar to
  var adjustedPositioning;
  if(!positioning.equals("") {
   // prepend namespace cancellation to prevent namespace redefinition errors
    adjustedPositioning = "namespace -;\n"+positioning;
  }
  else
  {
    adjustedPositioning = positioning;
  }
  var umpleCode = modelCleaned + Page.modelDelimiter + adjustedPositioning;
}

@TimLethbridge
The warning message is fixed now, and namespace -; is added at the start of the diagram code.
The only remaining issue is when to make warning 31 appear. The problem for now is that the code that adds the warning to the warning only works with previously declared classes (around line 5490 in UmpleInternalParser_CodeClass.ump) which means that:

whenever one of these classes appear in the code after the namespaces, a warning will appear, and thus repeating the warning for the same namespace multiple times

namespace w;
namespace x;
namespace y ;
namespace z ;
class H{}
class J{}

gives the following warning messages:
Warning on line 2 : Declared namespace z was not used before declaring x. More information (31)
Warning on line 3 : Declared namespace z was not used before declaring y. More information (31)
Warning on line 4 : Declared namespace z was not used before declaring z. More information (31)
Warning on line 2 : Declared namespace z was not used before declaring x. More information (31)
Warning on line 3 : Declared namespace z was not used before declaring y. More information (31)
Warning on line 4 : Declared namespace z was not used before declaring z. More information (31)

so 3 warnings for each new class

if a class has already been added, the warning won't appear:

namespace w;
namespace x;
class H{}
namespace y ;
namespace z ;
class H{}

gives the following warning messages:
Warning on line 2 : Declared namespace x was not used before declaring x. More information (31)
Warning on line 6 : Redefining the namespace of class H to z. More information (30)
Warning on line 9 : Redefining the namespace of class H to z. More information (30)

so the warning for namespace y is ignored.
This means that the code for warning 31 should be elsewhere, and the way tokens are analyzed makes this not trivial I think.

@fjtheknight Yes, I see that the warning 31 code should be elsewhere. I think the last comment should be put in the main issue; or alternatively in a separate issue.

@TimLethbridge
(current fix is pushed on branch issue1315w31b and will be merged to this branch if approved)
The issue with warning 31 is fixed now as well as some other issues:
1. Warning 31:
There was a problem with the solution you suggested to fix this issue:
When a namespace is redefined, the previous namespace could no longer be used, and thus a warning should be issued. So simply checking namespaces on parsing won't fix the problem. So what I did is that:

I added a new class (NameSpace) to save namespaces' values, positions and how many times they have been used, and added a NamSpace attribute to the UmpleElement class

Whenever a namespace is parsed, it is added to a list of NameSpaces

If a namspace is used, increase its usage counter

If a namespace is redefined, decrease its usage counter

After parsing is done, check the parsed namespaces list and issue a warning whenever a namespace has been used 0 times

I also replaced the old method (getCurrentNameSpace) used for getting the current package name (which required looping through all the tokens whenever a class is parsed) with a simple NameSpace variable (lastParsedNameSpace) which highly improves performance

The warning message was simplified to just say that the declared namespace isn't used

2. Interfaces' packages:
There was an other issue with Interfaces and namespaces:
In the following example
namespace x;
interface I
{
  String getA();
}
namespace y;
interface I
{
  String getB();
}

interface I should be in package x, and contain two methods, however, currently the parser will ignore previously defined parts of the interface and will create an interface with only the last part parsed in the wrong package, so the code generated will be:
package y;
public interface I
{
 public String getB();
}

instead of
package x;
public interface I
{
 public String getA();
 public String getB();
}

This is now fixed.

Old test examples:
Error and warning tests are fixed.

The following example demonstrates the changes:
Example:
interface I1 {}
class C1{}

namespace n1;
class C2{}

namespace n2;
interface I2{}
class C2{att1;}
class C3{};

namespace n3;
namespace n4;
class C4{}
namespace -;

class C5{};

namespace n5 --redefine;
interface I2{void m1();}
class C2{att3;}

In this example

no namespaces were declared for I1, C1 and C5
the namespace for I2 and C2 was redefined to n5, namespace for C3 wasn't changed (n2)
n3 wasn't used, n1 is no longer used after redefining the namespace for C2

So we have 2 unused namespaces (n1 and n3 => 2 warnings 31), and an attempt to redefine the namespace for C2 to n2 (warning 30)
This is to show the changes made to solve the issue with warning 31:
https://github.com/umple/umple/compare/issue1315redefine...issue1315w31b
I have some questions:

Should the NameSpace and NameSpace[] attributes be internal?
Should the documentation be changed?

@fjtheknight . Your changes in branch issue1315w31b look good, as far as I can tell.
As a rule, I prefer the use of directed associations as opposed to list attributes, since the associations appear in the diagram. I am not going to insist on this change, however.
No the NameSpace and Namespace[] should not be internal.
I would like you to add at least one more test to test the changes to interfaces. Perhaps create a complicated test that has a bunch of interfaces and classes in the same namespace, multiple declarations of the same namespace that is used. Multiple declarations of a namespace that is not used, with one case being where it is declared and then cancelled by namespace .
Then merge into this branch and let me know. I would like to do manual tests of all the cases at that point before merging the PR into master.

There is an issue with associations and classes that have no namespace.
In the following example:
class Out{}
namespace p;
class In{*--* Out;}

class In is in package p, but class Out is in the default package. But because there is an association, there will be an attempt to import a package for class Out in class In file (which is just an empty string in this case) :
//%% NEW FILE In BEGINS HERE %%

package p;
import java.util.*;
import .*;

public class In
{
  ...
}

//%% NEW FILE Out BEGINS HERE %%

import java.util.*;
import p.*;

public class Out
{
  ...
}

The problem is that in Java classes in the default package cannot be imported by classes in packages.
The issue occurs only when we have an association with a class that is in the default package. We can either raise a warning saying that classes in default package can't be imported by classes in packages, or we can just add a "association" package by default to classes with no packages if this case is detected. There are other solutions that will add a lot of extra code.

@fjtheknight  I assume the issue with packages and associations is a longstanding issue and not introduced by your changes? If so, then I think we should raise it as a new issue rather than tag it on to this one. Raising a warning I think is not a good idea, as programmers should not be restricted in that way. if there are solutions that would require a lot of code, please describe how you think that code might look when you raise the issue.

@TimLethbridge
No this issue is introduced by my changes. Currently Umple just puts classes that have no namespace in the last parsed namespace, this way the issue is avoided. But now, classes with no namespace are put in the default package.
There are possibly two workarounds for this issue:
Let's say we have this example:
class A{
//code here
};
namespace p;
class B{isA A;}

The first one is to generate a class in package p, and make class A and B extend it. So the above code should be interpreted by Umple as follows:

class A{
isA A2;
};
namespace p;
class B{isA A2;}
class A2{
//code here
}

This way, class A and B will have access to class A2 because it is either in the same directory or in a sub-directory. But that's against the idea of having class A code in the default package.

The second one is to use Reflection. The problem is that I couldn't find a way to solve the issue with reflection for the example with superclasses, and that I couldn't find similar concepts in Ruby.

@fjtheknight
Firstly, we should avoid solutions such as renaming classes and adding extra supervlasses as suggested above.
We should also avoid adding complex solutions such as using reflection. Reflection tends to result in slow code and code that is hard to understand. It is also more prone to security issues. Some previously acceptable reflection is now deprecated.
So back to the original: classes that have no namespaces should just be in the last parsed namespace. Why can't we do that? In fact it is core to the design. I should be able to say:
namespace X;
class Y {}
class Z {}

with the result that both Y and Z are in X. Does this no longer work in your changes? Can you give an example of code that will result in changes to which namespace they are in?

namespace X;
class Y {}
class Z {}

with the result that both Y and Z are in X. Does this no longer work in your changes? Can you give an example of code that will result in changes to which namespace they are in?

This still works. The problem only occurs when we have a class that has no package name (by that, I mean classes that are declared either before any namespace is declared, or after namespace -;) :
class A{} //will be in default package
namespace n;
class B{} //will be in package n
class C{} //will be in package n
namespace -;
class D{} //will be in default package

As for your example, both Y and Z are in X. To change this, we need to use --redefine; :
namespace X;
class Y {}
class Z {}
//both are now in X

namespace X2 --redefine;
class Y{}
//Y is now in X2
namespace -;

class Z{}
// Z is not affected by X2 because of namespace -;

namespace X3;
class Z{}
// Z is not affected by X3 because there is no --redefine; and is still in package X. A warning will be issued because of this
// Another warning is issued because X3 was not used

Also, currently, if a class is in a package, there is no way to put it back in the default package. Should we add that?

I merged all the changes from the other branch to this one.
There was a problem with interfaces: if an UmpleClassifier implements an interface that is in an other namespace, "import interfaceNameSpace.*;" won't appear in the generated code.
For example, the following code
namespace f;
interface F{}
namespace j;
interface J{isA F;}

gives
//%% NEW FILE F BEGINS HERE %%

/*PLEASE DO NOT EDIT THIS CODE*/
/*This code was generated using the UMPLE <IP_ADDRESS>07.2d2b84eb8 modeling language!*/
package f;
// line 3 "../../../../ump/tmp821300/model.ump"
public interface F
{

}

//%% NEW FILE J BEGINS HERE %%

/*PLEASE DO NOT EDIT THIS CODE*/
/*This code was generated using the UMPLE <IP_ADDRESS>07.2d2b84eb8 modeling language!*/
package j;
// line 5 "../../../../ump/tmp821300/model.ump"
public interface J extends F
{

}

I was able to fix the issue with classes that implement an interface from another namespace, but there is still a problem with interfaces that extent interfaces from other namespaces. UmpleClass has GeneratedClass that has addMultiLookup method which can be used to add imports. The code generator uses that later to generate the import code. I couldn't find anything similar for interfaces.
The latest changes added a check for imports from the default namespace (class-class and class-interface implementation, extension and association). In this case, a warning is issued and the namespace is changed.
Tests and examples should be added after manual tests.


Add synchronization to Person class

A lock on the Person class must now be acquired before incrementing
nextSerialNumber. This prevents conflicting updates when multiple threads try
to increment it at the same time.
Signed-off-by: jimmyk<EMAIL_ADDRESS>

This is a fix to address:
https://github.com/eclipse-openj9/openj9/issues/11900
testConstructorReference in TestLambdaMethodReferences in believed to be failing due to a race condition when nextSerialNumber is incremented during the construction of a Person object.

I ran grinders to check that the original issue was fixed. I ran 7 grinders of 100 runs each for a total of 700/700 Passes:
job/Grinder/19523/
job/Grinder/19535/
job/Grinder/19560/
job/Grinder/19561/
job/Grinder/19564/
job/Grinder/19574/
job/Grinder/19582/
@Mesbah-Alam Can you take a look at this?


Update to new SMAPI API's

Updated to use new SMAPI API's and also add a FireDelay setting.
Also seems to fix error #2.

@EnderHDMC I must have missed this pull request when I submitted my own, sorry! It's superseded by newer pull request #5 though. Can you close this one to avoid confusion?

Sure, will close it now.


Add list of attendees to the eventTemplateResponse

Here is a PR to re-add the list of Attendees on the /api/events endpoint.

unit tests are not ok...

LGTM. Waiting for the tests


TestServiceWithTrafficSplit periodically fails with incorrect response

Here's an example run: https://github.com/mattmoor/mink/runs/1422512832?#step:11:24
/kind bug

/lifecycle frozen

Test is stable - closing out


No "Create campaign" button in approved archived ads Oracles

Approved ads Oracle after termination doesn't have 'Create campaign' button:

The correct behavior should be like that:

From the desktop app it works without any issues.

The Create campaign button is available only for the author of this Oracle. If you logged in using another account, it won't be visible.

The Create campaign button is available only for the author of this Oracle. If you logged in using another account, it won't be visible.

The above screenshots have been made by the Oracle owner after authorization in the web-application.

@ltraveler Could you try to login using identity 0x1fb4c3e5964e53ed5b5a9f030761342a36354f5b in the Incognito mode and see if the Create campaign button is available?

@ltraveler Could you try to login using identity 0x1fb4c3e5964e53ed5b5a9f030761342a36354f5b in the Incognito mode and see if the Create campaign button is available?

Yes, now it is available.


arch: Rename xxx_getsp to up_getsp

Summary
All modern desgin support stack pointer and it's also an
important information, so let's standardize this interface.
Impact
Testing

But is it exported outside the arch directory?
If we have plans to do so, it should also be prototype'd in include/nuttx/arch.h.

Many inlince function(e.g. up_irq_save, up_tls_info) doesn't declare in include/nuttx/, but only in arch/xxx/include/, I just follow this convention.

Many inlince function(e.g. up_irq_save, up_tls_info) doesn't declare in include/nuttx/, but only in arch/xxx/include/, I just follow this convention.

Yes, that's right, but we still add comments in include/nuttx/arch.h to explain why we don't have a prototype here (e.g. because it's a macro or an inline function).
But the convention is up_ functions are exported outside the arch directory, while chip_ or  arch_ are used only inside the arch directory, this is why I asked if we have plan to use this outside arch.

Many inlince function(e.g. up_irq_save, up_tls_info) doesn't declare in include/nuttx/, but only in arch/xxx/include/, I just follow this convention.

Yes, that's right, but we still add comments in include/nuttx/arch.h to explain why we don't have a prototype here (e.g. because it's a macro or an inline function).

Done, the comments is added in include/nuttx/arch.h

But the convention is up_ functions are exported outside the arch directory, while chip_ or  arch_ are used only inside the arch directory, this is why I asked if we have plans to use this outside arch.

To support TLS, the implementation is already moved from src/up_internal.h into arch/include/arch.h. This PR just make it more clear.


Reduce compilation warnings

Following changes:
o Most of the changes in the patch are cosmetic, so basic as replacing tabs with spaces.
o minor bug in usage of sizeof.
o Change position in dyn_test.c from char * to size_t.
Minimal impact since changes are mostly in dyn_test.c
Testing:
ran dyn_test.

Shailesh,
Can you please separate these 2 issues to make them clearer?  Also these need to go to Netflix's dev branch.  Thanks.

Hi
Are you talking about compilation warning and cluster describe? If so, i have reverted the cluster describe patch.
-SB

On May 7, 2015, at 5:39 AM, Minh Do<EMAIL_ADDRESS>wrote:
Shailesh,
Can you please separate these 2 issues to make them clearer? Also these need to go to Netflix's dev branch. Thanks.
—
Reply to this email directly or view it on GitHub.


Included a NPC in demo 3-17-18

I have broken down my Pull request. This includes the NPC guy. the 'Artwork' is MIT, do whatever you want with it. This includes a multi-dialog segment example. (Which is currently broken at the moment.)

Thanks, lavaduderDev! 🙂I think it's a good idea to add an npc to the demo scene, since we don't actually have any examples of branching dialogue in the demo now. I think we'll just keep this PR open until the branching dialogue issue has been resolved though.
What do you think, @StraToN?

@fleskesvor I totally agree on this. I'm still having difficulties finding time to look into this issue, but it is still on my todo-list.
Ofc, when it's fixed, we'll definitely want an NPC in the demo scene - until another (attractive) demo scene is made.

Ok I made some progress on #86 .
It is not totally fixed yet as new problems arouse. I am using lavaduderDev:demo-improvements branch for this debug.

@StraToN: Glad to hear you made progress, as this is currently also a blocker for flossmanualsfr/escoria#16, which also has more examples of branching dialogue if you need it for testing.
@lavaduderDev: I think it would be nice if you could also include your player_anims.gd and the other sprites for the walk cycle, because even if we don't use it in the demo in the short run, it would be useful for testing future features like multiple playable characters and costume changes.

Branching dialogs #86 being fixed by #99, is there any progress on this?

Sort of... - ish. This should technically work already. I would test it on the current branch. But I'm having a little bit of trouble on my end. My repositories are out of date. Though this merge seems to have neglected to put the NPC in the test.tscn

Okay. It should all be up to date now.

Blast it. https://github.com/godotengine/escoria/pull/129
this PR has trouble with baf94c5. As both tried to fix the issue of esc files not being connected. However it should be noted that https://github.com/godotengine/escoria/pull/129 did a much better job.

Okay so I deleted the sections that had conflicts. I'm not sure if that was the proper way to handle it.

I think this is ok for merge, and could serve well as base for the future new demo scenes.
@fleskesvor

@lavaduderDev Did you mean to commit demo/ui/inventory.tscn and demo/ui/inventory_items.tscn? It doesn't look like you have any significant changes in either and they're causing conflicts.

I toggled use, and inventory bools on each of the items in demo/ui/inventory_items.tscn

NPC already present in new Escoria version (branch main)


Support token authentication for private git dependencies

Problem
I'm already importing private git based dependencies (e.g. via raw.githubusercontent.com) in my deno projects via an access token. See<EMAIL_ADDRESS>It would be nice to have the same functionality with cargo.
Proposed Solution
Support host based authentication tokens via an environment variable for git based dependencies. See<EMAIL_ADDRESS>Notes
I'm aware of https://doc.rust-lang.org/cargo/appendix/git-authentication.html, yet access tokens can be more easily deployed compared to storing username and password in a credential/ssh store. Plus, access tokens can expire.

I just realized this does not make sense, since cargo needs to clone the whole repository.
SSH/deploy keys should be sufficient.


relay: introduce ConnectContext for better control over network latency

A websocket dial may hand for an unreasonably long time and a nostr client has no control over this when trying to connect to a relay.
Go started introducing context in networking since 2014 - see https://go.dev/blog/context - and by now many net functions have XxxContext equivalent, such as DialContext.
Example usage of the change introduced by this commit:
ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)
defer cancel()
r, err := nostr.RelayConnectContext(ctx, "ws://relay.example.org")

The code above makes RelayConnectContext last at most 3 sec, returning an error if a connection cannot be established in the given time. This helps whenever a tight control over connection latency is required, such as distributed systems.
The change is backwards-compatible except the case where RelayPool.Add sent an error over the returned channel without actually closing said channel. I believe it was a bug.

i've just realized there's also RelayPool. let me see if i can add context in there too.

i've just realized there's also RelayPool. let me see if i can add context in there too.

done

i've just realized there's also RelayPool. let me see if i can add context in there too.

done

actually, done now. i believe a better return value for RelayPool.AddContext is simply error, no channels.
sorry for back and forth. this is the final version. ptal.

I hope this is good because I didn't read.

I hope this is good because I didn't read.

well, i wrote a couple tests and also recompile noscl with this change. all seemed to work so should be ok :crossed_fingers: j/k :)


INTERSECTS with LineString returns wrong results.

@tidwall hi, I test INTERSECTS with LineString,  but I gets wrong results. It seems that the first point and the last point of a LineString has been connected when doing INTERSECTS . Can you check it and fix it if the bug exists?
Here is my test demo:
set fences cross1 object {"type":"Feature","geometry":{"type":"Polygon","coordinates":[[[24,21],[25,21],[25,19],[24,19],[24,21]]]}}
set fences none1 object {"type":"Feature","geometry":{"type":"Polygon","coordinates":[[[24,18],[25,18],[25,8],[24,8],[24,18]]]}}

intersects fences ids object {"type":"LineString","coordinates":[[20,20],[30,20],[30,10]]}

the above linestring cross only the fence cross1 , but ["cross1","none1"] is returned, because  line [30,10],[20,20] cross the fence none1.
intersects fences ids object {"type":"LineString","coordinates":[[20,20],[30,20],[30,10]**,[30,0],[10,0]**]}

correct result returned when testing another linestring, because  line [10,0],[20,20] do not cross the fence none1.

Very strange indeed. I'll need to do some testing on my side and let you know if I get the same results. Stay tuned.

Hi, I recently tested this issue on my machine and was unable to reproduce the problem: the INTERSECTS query with the defined LineString returned ["cross1"] only.
Are you still seeing this problem on your side @yorkxiao ?
@tidwall , given that this issue was reported more than a year ago, perhaps it was resolved in a newer release of Tile38?


Eslint: add more rules set to warnings

This PR adds array-callback-return, no-useless-escape, space-before-function-paren and no-param-reassign

Automated message from Dropbox CLA bot
@arpith, it looks like you've already signed the Dropbox CLA. Thanks!

Added in https://github.com/zulip/zulip/pull/2573


RuntimeError: range cannot be used as a value

Thanks for this repo, I get it's rough at the start. I get this error when trying to train the wikitext example:
Traceback (most recent call last):
  File "train.py", line 1, in <module>
    from sinkhorn_transformer import SinkhornTransformerLM
  File "/home/deepspeed/.local/lib/python3.6/site-packages/sinkhorn_transformer/__init__.py", line 1, in <module>
    from sinkhorn_transformer.sinkhorn_transformer import SinkhornTransformer, SinkhornTransformerLM, SinkhornSelfAttention
  File "/home/deepspeed/.local/lib/python3.6/site-packages/sinkhorn_transformer/sinkhorn_transformer.py", line 128, in <module>
    @torch.jit.script
  File "/usr/local/lib/python3.6/dist-packages/torch/jit/__init__.py", line 1181, in script
    return _compile_function(fn=obj, qualified_name=qualified_name, _frames_up=_frames_up + 1, _rcb=_rcb)
  File "/usr/local/lib/python3.6/dist-packages/torch/jit/__init__.py", line 1077, in _compile_function
    script_fn = torch._C._jit_script_compile(qualified_name, ast, _rcb, get_default_args(fn))
RuntimeError:
range cannot be used as a value:
at /home/deepspeed/.local/lib/python3.6/site-packages/sinkhorn_transformer/sinkhorn_transformer.py:133:60
@torch.jit.script
def tensor_iterator_wrapper(padded_x, t, forward, backward):
    int_t = int(t.item())
    int_forward = int(forward.item())
    int_backward = int(backward.item())
    return [padded_x[:, ind:(ind + int_t), ...] for ind in range(int_forward + int_backward + 1)]
                                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE

I get the same error with/without deepspeed. The error above is without.

@timsoraro oops, put out a quick fix for now, my bad!

:)


AMBA Service Health Granular Deployment Flexibility

Overview/Summary
Adding parameter to provide flexibility to enable/disable SH alerts for:

ServiceHealth-Health
ServiceHealth-Incident
ServiceHealth-Maintenance
ServiceHealth-Security

in line with AMBA Service Health Granular Deployment Flexibility user story
This PR fixes/adds/changes/removes

Added parameters to the parameter file
Added policyEffect and effect parameter to the policySetDefinitions file
Added effect parameter to the alert files

Breaking Changes

NONE

As part of this Pull Request I have

[X] Read the Contribution Guide and ensured this PR is compliant with the guide
[X] Checked for duplicate Pull Requests
[X] Associated it with relevant GitHub Issues or ADO Work Items (Internal Only)
[X] Ensured my code/branch is up-to-date with the latest changes in the main branch
[X] Ensured PR tests are passing
[X] Updated relevant and associated documentation (e.g. Contribution Guide, Docs etc.)

LGTM @Brunoga-MS, great work!
Can you include some evidence of:

The deployment,
The resulting changes to the policyDefinitions and policySetDefinitions

Thanks!

@arjenhuitema : let me know if this is ok


Can it have OSx like titlebar in a cross-platform way?

https://github.com/atom/electron/blob/master/docs/api/frameless-window.md
Need to add custom css into content area

SOOO, that's easy, will file pull request

Apparently you solved the issue yourself, didn't you @Baldrs?


Enable Sendability checks on CI

Note: merge #114 first to get the tests passing

I don't think this is right. We have to pass -enable-experimental-feature as well

I don't think this is right. We have to pass -enable-experimental-feature as well

Do you think we have to?
I got the previous builds deliberately failing on CI before I fixed the sendability issues. Also, swift-open-api-generator does not use -enable-experimental-feature either for their sendabiliy CI.

I don't think this is right. We have to pass -enable-experimental-feature as well

Do you think we have to?
I got the previous builds deliberately failing on CI before I fixed the sendability issues. Also, swift-open-api-generator does not use -enable-experimental-feature either for their sendabiliy CI.

Yeah I might be mistaken and this actually works.


Add documentation guide on writing a provider

Summary
This commit adds a new documentation section on how to go about writing
a new provider. Right now there isn't really much documentation on the
procedure for writing a provider from scratch for a device or
simulator. While there is some api documentation on all the individual
pieces there was no guide putting everything together to explain the
higher level process. There used to be a tutorial on this, but that is a
bit stale at this point, and refers to the old interface. It also was
arguably in the wrong place since something like this should live in the
documentation with the interface so we can keep it up to date more
easily. This commit starts this guide and provides a high level overview
of all the components of a provider and how they need to be implemented.
Details and comments

The content looks good in general. But perhaps a bulleted list tldr in the beginning would make the task looks less daunting. Something like:
- Implement a `Provider` subclass that handles access to the backend(s).
- Implement a `Backend` subclass and its `run()` method. The class needs to describe the backend's configuration and options.
- Define basis gates for your backend(s).
- Implement a Job subclass with methods like `status()` and `result()`.

The content looks good in general. But perhaps a bulleted list tldr in the beginning would make the task looks less daunting. Something like:
- Implement a `Provider` subclass that handles access to the backend(s).
- Implement a `Backend` subclass and its `run()` method. The class needs to describe the backend's configuration and options.
- Define basis gates for your backend(s).
- Implement a Job subclass with methods like `status()` and `result()`.

That's a good idea, I added this to the intro section in: https://github.com/Qiskit/qiskit-terra/pull/5406/commits/bfe06ad3092c8ade9e9bb02d2324b29d9150fbb0

I was trying to follow the steps outlined in this Docs Update to add my own provider, and I wanted to point out that the way ProviderV1 is implemented, following these steps might not lead to a working 3rd-party provider. The example Provider (the one developed by AQT) linked in the docs in fact does not inherit the ProviderV1 class provides its own implementation of the required methods as shown here
When you try to inherit the ProviderV1 class and provide your implementation of backends(), you run into errors with conflicting names for attributes and methods. Its possible that I am just doing this wrong, so I tried to look for tests that check the ProviderV1 implementation in #5086 which originally added this feature, but I didn't find any.
Are there any examples of Providers (Internal or 3rd Party) that have been implemented making complete use of the steps outlined in these docs (i.e, inheriting the ProviderV1 class)?

@lazyoracle yeah, the aqt provider was recently updated to enable tab completion for the backends attribute on it's Provider class so it no longer is using the ProviderV1 abstract class as it's parent. The changes that were made there are something we're going to add into the ProviderV2 abstract class. I still think it's a good example just because it's the simplest out there and it has less baggage than other providers. If you'd like to see it when it was using the ProviderV1  class you can see that in original migration commit: https://github.com/qiskit-community/qiskit-aqt-provider/commit/1f99e3f5cb30de8db7b6257b1ca1e7a44d7f15b3
That being said #5128 is also a good example you can refer to also. It's just a local simulator and returns sync job objects which is a bit different from other providers out there.

@lazyoracle yeah, the aqt provider was recently updated to enable tab completion for the backends attribute on it's Provider class so it no longer is using the ProviderV1 abstract class as it's parent. The changes that were made there are something we're going to add into the ProviderV2 abstract class. I still think it's a good example just because it's the simplest out there and it has less baggage than other providers. If you'd like to see it when it was using the ProviderV1  class you can see that in original migration commit: https://github.com/qiskit-community/qiskit-aqt-provider/commit/1f99e3f5cb30de8db7b6257b1ca1e7a44d7f15b3
That being said #5128 is also a good example you can refer to also. It's just a local simulator and returns sync job objects which is a bit different from other providers out there.


Add k6 performance tests to release process

Problem
We have an initial form of k6 perf testing.
However, we need to expand it's usage and utilize it during release steps
Solution

Confirm state of k6 tests and make tickets for any improvements need to be made
Run tests to get soft assessments of load support across the applications and the performance of different methods
Run tests in 0.18 release steps

Alternatives
No response

The PR #899  covers fixes needed to individual tests, and improvements to the process of running the tests by providing a preparation script and nodejs package to wrap the test process. This improvements were made as part of current ticket since they were a pre-requisite to be able to complete points (2) and (3).
For further improvements the follow issues were created:
https://github.com/hashgraph/hedera-json-rpc-relay/issues/948
https://github.com/hashgraph/hedera-json-rpc-relay/issues/949


chore: adding testing scenarios

Description
Changes proposed in this pull request:

fix issues in the oom and the image-not-found scenarios
add scenarios for a broken apirule and for an syntax err in a serverless fync

Related issue(s)

In general it looks good. I had some minor comments.
Could you please add some mock response data for validation for the two scenarios you added?


glossarize improvement: determine modals needing regeneration

Cache glossary google sheet
Compare google sheet with cached copy.
Determine which elements have been changed in cinms_content - Google Sheets:

glossary
info_modal_links
info_figure_links

Ideally, we construct a dependency graph to then determine which Rmds need to get updated.
CodeDepends: Static analysis and dependency detection for R code

See krlmlr/deps.R: module dependency graph for an R package

The code change added 17 days ago by me fixes this issue.


feat: 🎸 expose createPortfolios in the Identities namespace

This method allows creating multiple portfolios in a batch
Description
This PR adds createPortfolios to the identities namespace. This method allows creating multiple portfolios in a batch
Checklist

[ ] Updated the Readme.md (if required) ?

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 15.0.0-beta.2 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 15.0.0-alpha.16 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix: some sites remove our css file

it looks timing related - as it doesn't happen if we load a little later. Likely React wiping the dom of changes
This change adds a mutation observer to the parent of the css file. then removes it after 10s
AP-2244

hotfix-v1.29


Script error: init() takes at least 6 arguments (5 given)

From @shrikantkaramkar on July 25, 2016 16:44
I am using redirect_request.py to redirect multiple urls.
On executing this py I am getting following error:
Script error:
__init__() takes at least 6 arguments (5 given)

I am using following mitm method to redirect:
from mitmproxy.models import HTTPResponse
from netlib.http import Headers

def request(flow):
    # pretty_host takes the "Host" header of the request into account,
    # which is useful in transparent mode where we usually only have the IP
    # otherwise.

    # Method 1: Answer with a locally generated response
    if flow.request.pretty_host.endswith("example.com"):
        resp = HTTPResponse(
            b"HTTP/1.1", 200, b"OK",
            Headers(Content_Type="text/html"),
            b"helloworld"
        )
        flow.reply.send(resp)

mitmproxy version: 0.17
OS: MAC OSX Yosemite 10.10.5
Copied from original issue: IronLanguages/main#1307

From @shrikantkaramkar on July 25, 2016 17:37
This is the init of HTTPResponse
def __init__(
            self,
            http_version,
            status_code,
            reason,
            headers,
            content,
            timestamp_start=None,
            timestamp_end=None,
            is_replay = False
    )

copied from source code

From @shrikantkaramkar on July 25, 2016 17:32
I tried with passing 6 arguments, 7 arguments but still this error persists,

From @simplicbe on July 31, 2016 15:20
@shrikantkaramkar how do you have installed the mitmproxy module? Using ipy -X:Frames -m pip install mitmproxy?

From @shrikantkaramkar on July 31, 2016 15:36
steps:

Downloded the zip from github
installed using python setup.py install
Came across few library issues and resolved them.

Let me if there is better way to install latest versions and upgrade mitmproxy.
Thanks
Shrikant

On Jul 31, 2016, at 11:20 AM, Benedikt Eggers<EMAIL_ADDRESS>wrote:
@shrikantkaramkar how do you have installed the mitmproxy module? Using ipy -X:Frames -m pip install mitmproxy?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

From @simplicbe on July 31, 2016 15:38
@shrikantkaramkar I currently try to install it using ipy -X:Frames -m pip install mitmproxy but some errors occurse. I try to solve them, cause this should be the way to install the module. But I'll also try to reproduce it the way you have installed the module. Thanks for your quick answer.

From @shrikantkaramkar on July 31, 2016 16:51
ipy -X:Frames -m pip install mitmproxy
You run above command after downloading the code from github.
Sent from my iPhone

On Jul 31, 2016, at 11:38 AM, Benedikt Eggers<EMAIL_ADDRESS>wrote:
@shrikantkaramkar I currently try to install it using ipy -X:Frames -m pip install mitmproxy but some errors occurse. I try to solve them, cause this should be the way to install the module. But I'll also try to reproduce it the way you have installed the module. Thanks for your quick answer.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@shrikantkaramkar I know this was almost a year ago that you filed this issue, but do you have more details on how to reproduce it? Can you try running with -X:ExceptionDetail as a command line argument to ipy.exe when you are trying to run and see the issue?


Using scss files

If I wanna use .scss files what I need to do?
I can open a wiki page or a PR to explain this to newbies like me.
Thanks.

https://github.com/sveltejs/template/issues/34

What you need is to use a style preprocessor. See the docs at https://svelte.dev/docs#svelte_preprocess.
If you don't want to write your own preprocessor there are some existing packages:

https://github.com/kaisermann/svelte-preprocess
https://github.com/ls-age/svelte-preprocess-sass

Ok, @MaxMilton I will write a PR for a wiki/FAQ page ASAP for newbies. Please do not close.


2048 Game Made responsive

Fixed issue #1046
Made site responsive
Screenshots:
Earlier:

Now:

@Vishal-raj-1 @urvashi-code1255 @harshgupta20 @ridsuteri Please view my PR

@Vishal-raj-1 @urvashi-code1255 @harshgupta20 @ridsuteri Please view my PR

@Vishal-raj-1 @urvashi-code1255 @harshgupta20 @ridsuteri Please view my PR

In 400px It's getting trimmed Look into this

okay I will update that.

Changes updated kindly check
@Vishal-raj-1 @urvashi-code1255 @harshgupta20 @ridsuteri @991rajat

Great Work. Keep Contributing.


Fix hardcoded year in python test

Summary:

What: Updates test_update_samples_success to be compatible with the year of the rabbit and beyond.
Ticket: sc<fill_in_issue_number>
Env: <rdev link>

Demos:
Notes:
Checklist:

[x] I merged latest <base branch>
[x] I manually verified the change
[x] I added labels to my PR
[x] I tested in multiple browsers
[x] I added relevant unit tests
[x] I have notified others of changes they need to make locally (migrations, jobs, package updates, etc)

Going to merge this now since the test fix is necessary for the Privacy Policy update changes to actually deploy.


Wrong lr schedule if batch size changes?

It seems that detrex currently has only IterBasedRunner implemented, and assumes a constant batch size of 16, right? As a result, If I change the batch size (for example, 16 -> 64 for more efficient training on GPUs with larger memory, such as V100 or A100), the lr schedule will be wrong, right?

It seems that detrex currently has only IterBasedRunner implemented, and assumes a constant batch size of 16, right? As a result, If I change the batch size (for example, 16 -> 64 for more efficient training on GPUs with larger memory, such as V100 or A100), the lr schedule will be wrong, right?

Yes, you should change the scheduler at the same time~ we will try to modify this part in detrex in next version

I'm closing this issue~ feel free to reopen it if needed~


Make format of Video Processing demo variables consistent, and fix typo

Just me being picky about spelling/consistency

You'll also need to updated ipynb and RST file, and update MD5 hash, in order for docs to build correctly. See #635 for example PR that's done this before.

Hopefully now fixed. Some weird things have happened with the ipynb diff though, hopefully not important.


Add python interface

This allows modules to be written in Python.
Uses pybind11 for the python bindings and is based partially on the everestjs javascript bindings.

replaced by feature/python-bindings-compressed


peer conductor tests

Closes #186
Checklist

[x] I have read the contribution guidelines.
[x] Title of the pull request is clear and informative.
[x] If applicable, the code is properly documented.
[ ] The code builds without any errors.
[ ] All unit and integration tests pass.

Description
Adds some best effort PeerConductor testing! 🚀 🎸
Related Issues and PRs
#186

validated partial build locally - it's a late evening so i'm going to let CI test the full build for me and address fixes as needed (if needed) tomorrow ⌛


display-name enhancement: disallow specified names

The problem that I'm having, which I'd like to enforce against, is code like this:
module.exports = React.createClass({
});

which gets a name of 'exports' and is entirely unhelpful in the React dev tools and console messages.
Either assigning to a variable first, or setting the displayName prop explicitly would be fine.
My proposal is to add config to the 'display-name` rule to disallow certain names, e.g
"display-name": [2, { "forbid": ["exports", "default"] }]

My feeling is that this should maybe only apply to inferred/transpiler names; if you want to explicitly name your component 'exports' with 'displayName', then that should be allowed. Might be tough to implement that distinction, however.

The react/display-name rule will already prevent this case, it will accept a displayName property or a named export but will throw if you try to do an unnamed export like your example.


Upgrade to Latest Tdms.DBus

Switch back to netstandard2.0
Upgrade to 0.14.0 of Tdms.DBus
Move Tmds.DBus.Tool into a dotnet-tools.config

This commit moves this library back to netstandard2.0 as this improves compatibility with all projects.
The latest version of Tdms.DBus (at the time of this PR 0.14.0) is installed.
The DotNetCliToolReference tag is removed and is instead replaced with dotnet-tool.json as I believe this is the replacement in modern .NET Core SDK, this also avoids the breaking change that Tmds.DBus.Tool 0.14.0 introduced.


Update TypeTree

I encountered a super new unity asset file, since the v5 dose not really extract the files, I tried the v4 pre-release ver., and it told me nothing but TypeTreeDatabase is too old, the log is down below:
[warning] TypeTreeDatabase: Unprecise match for class Class 28 (Texture2D) (required: 5.3.0f4, available: 5.0.0f4)
[warning] TypeTreeDatabase: Unprecise match for class Class 213 (Sprite) (required: 5.3.0f4, available: 5.0.0f4)

I was thinking that is it possible to just update the TypeTreeDatabase and extract those files successfully.

I don't think the v4 really extracts files either yet.
However you can update the database yourself if you can find unity files with type information embedded for those classes for that version. e.g. Install Unity 5.3 yourself if you don't already have it, create a project with some 2d textures and sprites and run 'disunity learn' on all of the files under project\Library\metadata* (not the .info files). This will create a types.dat in the same folder as the disunity.jar you're running.
As I say I don't think that's enough to actually extract more assets, but it might be worth a go?


Fixed acyclic coloring

Implemented modified version of acyclic coloring algorithm using disjoint sets with root as integer (representing the edge's position in the graph) instead of the edge object itself to avoid unforeseen errors. Also enforced initialization of the tuple vectors with (0,0) instead of undef to avoid random errors.
Few performance enhancements that are possible in this implementation:

use hashmap to save the edges' keys instead of iterating every time to find edge index
implement tests using the standard SimpleGraphs(nv, ne) function instead of generating graphs using rand(1:nv)

Fixes #75

Still some errors, do you know where to look at?

@matbesancon are you talking about errors in this PR or the travis build? It seems the build is failing because of some issues with methods related to BlockBandedMatrices. Acyclic tests are passing.

Dang thanks, yes I was talking about the Travis build
On Fri, Dec 27, 2019, 20:31 Pankaj Mishra<EMAIL_ADDRESS>wrote:

@matbesancon https://github.com/matbesancon are you talking about
errors in this PR or the travis build? It seems the build is failing
because of some issues with methods related to BlockBandedMatrices. Acyclic
tests are passing.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/JuliaDiffEq/SparseDiffTools.jl/pull/85?email_source=notifications&email_token=AB2FDMU5KUBEJAWQTZGSYVLQ2ZJY7A5CNFSM4J7SX5R2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHXU6TI#issuecomment-569331533,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB2FDMVJ764IFWDGV2EGPGLQ2ZJY7ANCNFSM4J7SX5RQ
.


fix: Use correct version tag for bugfix releases

What does this PR do?
Updates make-release.sh script to correct bump the next bugfix version in release branches. I.e., instead of bumping to version 0.13.1, use version v0.13.1
What issues does this PR fix or reference?
Automated process for v0.12.0 release incorrectly bumped the version, making the v0.12.1 bundle reference a non-existent image: commit
Is it tested? How?
Tested by running script locally
PR Checklist

[ ] E2E tests pass (when PR is ready, comment /test v8-devworkspace-operator-e2e, v8-che-happy-path to trigger)

[ ] v8-devworkspace-operator-e2e: DevWorkspace e2e test
[ ] v8-che-happy-path: Happy path for verification integration with Che

/test v8-devworkspace-operator-e2e


few enhancements suggestions in the API

Hello that's me again !
With time, I have been collecting many small notices I had on the types and functions present in this great module. Here I would like to report back my thoughts about possible nice improvements :slightly_smiling_face:
I know some of the designs my suggestions might be more related to glm than to pyglm ... but still !
1. mat <-> quat conversion
The way to convert matrices to quaternion is very smooth:  quat(mat3(...))
However the conversion from quat to mat is weird in my mind:  mat3_cast(quat(...)) or mat4_cast(quat(...))
I would think that if a quat can be created directly from a matrix, with no extra function, it should be the same back to mat
Also conversion quat->mat is non-ambiguous at contrary to mat->quat which can be subject to interpretation when mat is non orthogonal. So I would say if some of both conversions should be a separated function, it should be mat->quat and not quat->mat
2. affine transformation for vectors
Half the operations I do with mat4 is transforming a vec3, but as they are not of compatible dimensions there is always the need to convert them. Could it be possible to have a function doing this multiplication ?
>>> vec3(matrix * vec4(v,1))    # many conversions and parenthesis for just one vector
>>> hmul(matrix, v)   # all conversions made in C code, so much more efficient

(I thought to hmul for Homogeneous Multiplication because affineMul like affineInverse seemed too cumbersome)
As i suspect it could be useful in other dimensions so it could be an overloaded functions:
hmul(mat4, vec3) -> vec3
hmul(mat3, vec2) -> vec2
hmul(mat2, vec1) -> vec1

3. have glm.min/max work on iterables, like the python builtin functions
I think it wouldn't change a lot efficiency, but do you think it could be possible to have glm.min/max work with iterables of vectors ?
Currently I am frequently in situation where I need to do this
vmin = vec3(inf)
for p in points:
    vmin = glm.min(vmin, p)

# instead of
vmin = glm.min(points)

making it working on iterables would make glm.min/max perfect vectorized replacements for the builtins min/max
4. rotation and translation functions
I fail to understand the exact meaning of the current glm.rotate and glm.translate functions :thinking:
I have been using it in the early times of my module but found them error prone and hard to read mixed in other codes.
seeing this example, It seems to be meant to apply successive transformations to a matrix, but why should it be done by composing those functions (which is hard to read), rather than multiplying the transformation matrices. Affine matrices are meant for it after all ?
I would have imagined something like
htranslation(offset:vec3) -> mat4     # returning a mat4 doing only a translation
hrotation(angle:float, axis:vec3) -> mat4  # returning a mat4 doing only a rotation
hrotation(quat) -> mat4
hrotationx(angle:float) -> mat4  # rotation around X
hrotationy(angle:float) -> mat4  # rotation around Y
hrotationz(angle:float) -> mat4  # rotation around Z

# same as in the above glm example (If I correctly understood it):
>>> view = hrotation(orientation.x, X) * hrotation(orientation.y, Y) * htranslation(translate)

conclusion
I hope I haven't been too out of topic with my suggestions. Else what do you think about these ?
cheers, Byerley

1. mat <-> quat conversion
The way to convert matrices to quaternion is very smooth: quat(mat3(...))
However the conversion from quat to mat is weird in my mind: mat3_cast(quat(...)) or mat4_cast(quat(...))
I would think that if a quat can be created directly from a matrix, with no extra function, it should be the same back to mat

Yeah. I agree. This would be more logical.

2. affine transformation for vectors
Half the operations I do with mat4 is transforming a vec3, but as they are not of compatible dimensions there is always the need to convert them. Could it be possible to have a function doing this multiplication ?

This seems like a more complex feature to implement.
I'll see what I can do.
Could you please make a separate Issue for this?

3. have glm.min/max work on iterables, like the python builtin functions
I think it wouldn't change a lot efficiency, but do you think it could be possible to have glm.min/max work with iterables of vectors ?
Currently I am frequently in situation where I need to do this
vmin = vec3(inf)
for p in points:
    vmin = glm.min(vmin, p)

# instead of
vmin = glm.min(points)

I think this would be a nice feature.
For the time being, here's a slight improvement:
import functools

functools.reduce(glm.min, points)

4. rotation and translation functions
I fail to understand the exact meaning of the current glm.rotate and glm.translate functions 🤔

It's actually simpler than you might think.
glm.rotate(m, angle, axis) creates a rotation matrix around the given axis (e.g. vec3(0, 1, 0)), by the given angle and the input matrix m is multiplied by this newly created rotation matrix.
It's basically a shorthand for:

# The hrotation function you suggested:
hrotation = lambda angle, axis: glm.rotate(glm.mat4(), angle, axis)

def rotate(m, angle, axis):
    return m * hrotation(angle, axis)

I don't know though why there is no overloaded version of rotate() or translate() that omits the input matrix.

Thank you for the suggestions!
I'll have to see when I have enough free time to implement them (:
Cheers
--Zuzu_Typ--

I opened a separated issue for suggestion 2. as you asked :)

That should be all of them (:


Add Local Development Setup Instructions (mostly)

I meant for this to just be changes isolated to adding instructions for setting up the project for local development. However I forgot I had addressed some security issues raised by Snyk as well in it.
Lastly there seems to be some changes to tau/core/views.py that I don't recall the reasoning for other than possibly helping to support my hosting environment better. We could potentially remove those changes if they interfere with anything.
Hope this helps and happy to hear any feedback you may have 🙂👍

Oh no now this PR is massive 😲


Support v0.4: Pin iota-crypto versions

Description of change
The release of iota-crypto version 0.9.2 introduced a breaking change by bumping their  bee-ternary dependency  to version 0.6.0 which then breaks compilation of bee-pow: 0.2.0 imported by iota-client (see https://github.com/iotaledger/bee/issues/1360 for a better description).
This PR pins dependencies on iota-crypto (and updates the dependency on iota-client) thus making it possible to build identity: ^0.4 without the need for library consumers to adjust their dependencies on iota-crypto (and other breaking crates) in their  Cargo.lock file.  Note that a fix for the dev branch was merged in https://github.com/iotaledger/identity.rs/pull/822.
Open questions

For some reason specifying version ranges >=0.7, <= 0.9.1 for the iota-crypto dependency in identity-iota leads to iota-crypto: 0.9.2 being pulled. Why is this? As a workaround I simply pinned the version to =0.9.1.  Is this OK?
I could not figure out why the iota-client dependency could not continue using the pinned git hash without breaking builds, but it works now using version ^1.1.1 published on crates.io. Is this OK?

Links to any relevant issues
Be sure to reference any related issues by adding fixes issue #.
Type of change
Add an x to the boxes that are relevant to your changes.

[x] Bug fix (a non-breaking change which fixes an issue)
[ ] Enhancement (a non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Fix

How the change has been tested
Several builds have been successfully built and tested locally and in the CI.
Change checklist
Add an x to the boxes that are relevant to your changes.

[x] I have followed the contribution guidelines for this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

It might be better for iota-crypto to yank the 0.9.2 release. I have asked them whether it would be possible for them to do that here: https://github.com/iotaledger/bee/issues/1360#issuecomment-1116003825