What function does the “light” weapon property serve on the hand crossbow?

In the equipment section of the D&D basic rules, it lists “light” as a weapon property of the hand crossbow.

The “light” property offers the following attributes:

Light. A light weapon is small and easy to handle, making it ideal for use when fighting with two weapons. See the rules for two-weapon fighting in chapter 9.

So, this would mean I can use my hand crossbow in two weapon fighting… Great! However, in the TWF rules in chapter 9 it says the following:

When you take the Attack action and attack with a light melee weapon that you’re holding in one hand, you can use a bonus action to attack with a different light melee weapon that you’re holding in the other hand.

Two weapon fighting only applies to melee weapons! Why does the hand crossbow have the light property? What purpose is it serving?

Now with the addition of the Feats in the players handbook my question still remains. The feat for crossbow expert says the following:

Crossbow Expert
Thanks to extensive practice with the crossbow, you gain the following benefits:

  • You ignore the loading quality of crossbows with which you are proficient.
  • Being within 5 feet of a hostile creature doesn’t impose disadvantage on your ranged attacked rolls.
  • When you use the Attack action and you attack with a one-handed weapon, you can use a bonus action to attack with a loaded hand crossbow you are holding.

As you can see the feat replaces the Two weapon fighting rules, and so the light keyword is still not needed.

Can the network serve malware?

I had a infected device on the network so i took all the machines besides the router offline and reinstalled the operating system from a clean copy and then scanned each one after bringing them back online without internet once i thought they were all clean i brought them back on the network applied updates downloaded and configured my firewall setup the DNS servers applied full disk encryption once again created new limited user accounts and setup new passwords and emails and setup my antivirus software i also configured automatic updates for both the operating system and antivirus i am also starting to monitor network requests is there anyway my network can get reinfected? Could the router serve malware? If so how could i detect if the router is serving malware and remove it? One more question related to Android security let’s say i have a Android phone and i click on a malicious website and download malware and i boot the phone into recovery and reset the phone could the phone still be infected some how? If so how do i detect the infection and remove it? Also how can i better secure my computers/phones and the network in general

php serve command error in laravel project

I just installed laravel with all the requirements (php,composer,nodejs) and created a new broject called blog, now when i run php artisan serve it returns an error sayingsutoload.php does not exist in the directory. see error below…

PHP Warning:  require(/home/tibsis/.config/composer/vendor/laravel/installer/blogg/vendor/autoload.php): failed to open stream: No such file or directory in /home/tibsis/.config/composer/vendor/laravel/installer/blogg/artisan on line 18 PHP Fatal error:  require(): Failed opening required '/home/tibsis/.config/composer/vendor/laravel/installer/blogg/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/tibsis/.config/composer/vendor/laravel/installer/blogg/artisan on line 18 

I tried copying the autoload.php file from the vendor folder and pasting into my “blogg” projects folder and still it did not work.

how do i fix this, would I have to reinstall everything from scratch?

Are celestials that serve evil deities also evil

So from what I’ve read evil aligned celestials are an extreme rarity but evil aligned deities exist. I’ve even heard that if I celestial turns evil they stop being a celestial. Celestials supposedly serve deities. Not all but many. If that’s the case do celestials just not serve evil deities, do evil celestials actually exist and are the ones that serve evil deities are also evil, are they forced to serve an evil deity regardless of their alignment?

Local gulp not found when executing gulp serve

I have downloaded the spfx samples from github and I am running into this problem when I execute gulp serve.

λ gulp serve [12:39:37] Local gulp not found in C:\react-todo-basic [12:39:37] Try running: npm install gulp 

I used this to install gulp:

npm install --save-dev gulp-install 

but still getting the same error.

then I ran

npm install 

then ran gulp serve again and started getting strange errors:

C:\react-todo-basic                                                                                               λ gulp serve                                                                                                               Build target: DEBUG                                                                                                        [12:56:27] Using gulpfile C:\Projects\react-todo-basic\gulpfile.js                                                         TypeError: Cannot read property 'apply' of undefined                                                                           at C:\Users\Administrator\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:20                                         at _combinedTickCallback (internal/process/next_tick.js:131:7)                                                             at process._tickCallback (internal/process/next_tick.js:180:9)                                                             at Function.Module.runMain (module.js:686:11)                                                                              at startup (bootstrap_node.js:187:16)                                                                                      at bootstrap_node.js:608:3                                                                                             [12:56:27] Error - Unknown                                                                                                  Cannot read property 'apply' of undefined                                                                                 [12:56:28] ==================[ Finished ]==================                                                                Error - Unknown                                                                                                             Cannot read property 'apply' of undefined                                                                                 [12:56:28] Project react-todo-basic version: 0.0.3                                                                         [12:56:28] Build tools version: 2.5.3                                                                                      [12:56:28] Node version: v8.9.4                                                                                            [12:56:28] Total duration: 2.7 s                                                                                           [12:56:28] Task errors: 2                                                                                                  TypeError: localCache.gulp.stop is not a function                                                                              at C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:253:37                              at C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:192:21                              at C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:133:13                              at Timeout._onTimeout (C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:114:17)         at ontimeout (timers.js:475:11)                                                                                            at tryOnTimeout (timers.js:310:5)                                                                                          at Timer.listOnTimeout (timers.js:270:5)                                                                               [12:56:28] Error - Unknown                                                                                                  localCache.gulp.stop is not a function                                                                                    C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:253                                                        localCache.gulp.stop();                                                                                                                    ^                                                                                       TypeError: localCache.gulp.stop is not a function                                                                              at C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:253:37                              at writeSummary (C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:202:13)               at process.<anonymous> (C:\react-todo-basic\node_modules\@microsoft\gulp-core-build\lib\logging.js:250:13)        at emitOne (events.js:116:13)                                                                                              at process.emit (events.js:211:7)                                                                                          at process._fatalException (bootstrap_node.js:374:26)                                                                   C:\react-todo-basic                                                                                               λ          

Para que serve a função addListener?

Eu sei usar o addEventListener, mas não sei para que serve o addListener, pesquisei e não achei nenhuma especificação sobre essa função.

<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <script> function myFunction(x) {   if (x.matches) {     window.alert("f");   } else {    window.alert("a");   } } var x = window.matchMedia("(max-width: 700px)") myFunction(x) x.addListener(myFunction) </script> </body> </html>

O que addListener está fazendo nesse trecho de código? e para que ele serve?

Como puedo hacer una agrupación en sql serve.?

tengo la siguiente consulta. (SQL SERVE)

SELECT a.id, b.Respuesta FROM users a INNER JOIN respuestas b ON a.id = b.id 

Eso me da este resultado

introducir la descripción de la imagen aquí

Quiero agrupar por el id de usuario pero cuando lo hago pierdo las respuestas

introducir la descripción de la imagen aquí

Es decir para mi usuario 71 debería de contener todas sus respuestas. introducir la descripción de la imagen aquí

Se que puedo hacer un join por cada respuesta para tratarla como dato independiente. Pero no me gusta tener esta practica porque los querys pierden eficiencia.

Si tienen alguna idea o saben como hacer estas agrupaciones sin perder datos se los agradeceré.

Serve two different websites, one under root and another under /news for nginx

I have this set up under Apache but can’t get it working under nginx. I have two websites one that covers everything, another under /news/. They run the same framework – Silverstripe.

Here is my nginx conf:

server {       include mime.types;       default_type  application/octet-stream;       client_max_body_size 0; # Manage this in php.ini       listen 80;       listen 443 ssl;       root /var/www/html/example/webroot;       server_name example.com www.example.com;        ssl on;        ssl_certificate /etc/letsencrypt/live/example/cert.pem;       ssl_certificate_key /etc/letsencrypt/live/example/privkey.pem;        access_log /var/log/nginx/example/access.log main;       error_log /var/log/nginx/example/error.log;        # Defend against SS-2015-013 -- http://www.silverstripe.org/software/download/security-releases/ss-2015-013       if ($  http_x_forwarded_host) {         return 400;       }        location ^~ /news/ {           root /var/www/html/example2/webroot;           try_files $  uri /framework/main.php?url=$  uri&$  query_string;            location ~ /framework/.*(main|rpc|tiny_mce_gzip)\.php$   {           fastcgi_buffer_size 32k;           fastcgi_busy_buffers_size 64k;           fastcgi_buffers 4 32k;           fastcgi_keep_conn on;           fastcgi_pass unix:/run/php-fpm/php-fpm.sock;           fastcgi_index  index.php;           fastcgi_param  SCRIPT_FILENAME $  document_root$  fastcgi_script_name;           include        fastcgi_params;         }        }        location / {         try_files $  uri /framework/main.php?url=$  uri&$  query_string;       }        error_page 404 /assets/error-404.html;       error_page 500 /assets/error-500.html;        location ^~ /assets/ {         sendfile on;         try_files $  uri =404;       }        location ~ /framework/.*(main|rpc|tiny_mce_gzip)\.php$   {         fastcgi_buffer_size 32k;         fastcgi_busy_buffers_size 64k;         fastcgi_buffers 4 32k;         fastcgi_keep_conn on;         fastcgi_pass unix:/run/php-fpm/php-fpm.sock;         fastcgi_index  index.php;         fastcgi_param  SCRIPT_FILENAME $  document_root$  fastcgi_script_name;         include        fastcgi_params;       }        # Denials       location ~ /\.. {         deny all;       }       location ~ \.ss$   {         satisfy any;         allow 127.0.0.1;         deny all;       }       location ~ \.ya?ml$   {         deny all;       }       location ~* README.*$   {         deny all;       }       location ^~ /vendor/ {         deny all;       }       location ~* /silverstripe-cache/ {         deny all;       }       location ~* composer\.(json|lock)$   {         deny all;       }       location ~* /(cms|framework)/silverstripe_version$   {         deny all;       } } 

I’ve tried a few other things similar to this but it always ends up the same result, the server returning a Moved Permanently to the same URL.

What are the best practices of designing database to serve multiple apps within one ecosystem?

To clarify the question here is the scenario. There is a web app which implements RESTfull API with JWT authorization. It runs on PHP/mySQL at the back and Angular2 in front.

Then comes another app which would need to use the same user credentials as the first one but it has its own context. The two apps will integrate with each other over time more and more, however the extent to which they will integrate with each other is still unclear, except for authorization and subscription payments. Think Atlassian ecosystem as a broad example of integration and account administration.

How would you design the database and APIs around it in such a case?