veliovgroup / jazeee-meteor-spiderable

Fork of Meteor Spiderable with longer timeout, caching, better server handling
https://atmospherejs.com/jazeee/spiderable-longer-timeout
33 stars 9 forks source link

question: Get lots of : select: Invalid argument #50

Open liu0fanyi opened 7 years ago

liu0fanyi commented 7 years ago

after curl http://localhost:3000/\?_escaped_fragment_\= get lots of select: Invalid argument, and can't stop

I do these steps:

  1. meteor add jazeee:spiderable-longer-timeout
  2. add Meteor.isReadyForSpiderable = true; in one of my react component's componentDidMount()

I use react-router, so .... I can't find Router.onAfterAction... I want some suggestions or sample..... Thanks a lot!

dr-dimitru commented 7 years ago

Hello @liu0fanyi ,

Could you please post full curl response please. And all errors/logs from server/phantomjs

liu0fanyi commented 7 years ago

Hello @dr-dimitru I have solved my issue, there is another <meta name="fragment" content="!">, I used before for prerenderIo. After delete it, looks ok now... Thanks a lot...I will close this.

dr-dimitru commented 7 years ago

Please, support this project by:

liu0fanyi commented 7 years ago

@dr-dimitru Sorry...I get them back... I try to use meteor npm start > errorlog 2>&1 to save error log, but It will curl just ok...there are no erros in errorlog... When I try meteor npm start, then curl, I will get these errors:

: Invalid argument
W20170502-21:28:42.426(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.426(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.426(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.426(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.427(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.427(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.427(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.427(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.428(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.428(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.428(8)? (STDERR) select: Invalid argument
W20170502-21:28:42.432(8)? (STDERR) select: Invalid argument

and curl nothing, curl just block. there are too many errors, I can't get the start of log......

Is there a way to get all errors from server/phantomjs? meteor npm start, is this: meteor --settings settings-development.json on Mac os, meteor is the latest one, 1.4.4.1

Thanks very much....I can't get what's wrong here...

dr-dimitru commented 7 years ago

Is phantomjs itself installed into your system? To make sure run phantomjs -v in console.

liu0fanyi commented 7 years ago

@dr-dimitru Yes, I can get phantomjs -v, it's 2.1.1 and I get the error from start of log:

W20170502-22:44:19.875(8)? (STDERR)  spiderable: phantomjs failed: { [Error: stderr maxBuffer exceeded]
W20170502-22:44:19.876(8)? (STDERR)   cmd: 'phantomjs  --load-images=no --ssl-protocol=TLSv1 --ignore-ssl-errors=true --web-security=false /Users/mac/learn/meteor/meteor_test/.meteor/local/build/programs/server/assets/packages/jazeee_spiderable-longer-timeout/lib/phantom_script.js "http://localhost:3000/documents/DctT76kiNsDf67oo5"' }
liu0fanyi commented 7 years ago

and I try to use phantomjs alone:

phantomjs  --load-images=no --ssl-protocol=TLSv1 --ignore-ssl-errors=true --web-security=false /Users/mac/learn/meteor/meteor_test/.meteor/local/build/programs/server/assets/packages/jazeee_spiderable-longer-timeout/lib/phantom_script.js "http://localhost:3000/follow"

It was ok, without any error......

dr-dimitru commented 7 years ago

@liu0fanyi ,

Looks like you bump into #49 Should be fixed as soon as requested changes will be fulfilled.

@nabilfreeman could you take a look on #49 ?

dr-dimitru commented 7 years ago

Please update to latest release. See bufferSize option.

dr-dimitru commented 7 years ago

@liu0fanyi let me know if latest release solve your issue

dr-dimitru commented 7 years ago

Hello @liu0fanyi ,

Have you figured out how to fix this issue tuning bufferSize option?

liu0fanyi commented 7 years ago

Hello @dr-dimitru sorry to replay late... I have tried to update this package and update bufferSize to 100m...in server/main.js but no help... How could I get more info about this question?enable debug in this package?

dr-dimitru commented 7 years ago

@nabilfreeman could you please take a look on this thread?

perak commented 7 years ago

The same thing happens to me. After few hours of debugging: application without accounts-password doesn't produce this error. When I add accounts-password error appears.

Looks like error is produced by phantomjs stderr (but I'm not 100 % sure).

I tried with multiple versions of phantomjs, tried downgrading meteor version... still no luck.

dr-dimitru commented 7 years ago

Hello @perak , @liu0fanyi ,

Thank you for the update.

Could you try to execute phantomjs directly (or fork this package and edit flags) with next flags:

phantomjs --load-images=false --ssl-protocol=any --ignore-ssl-errors=true --disk-cache=true --disk-cache-path=/data/phantomjs --cookies-file=/data/phantomjs/cookies.txt --local-storage-path=/data/phantomjs --local-to-remote-url-access=true --offline-storage-path=/data/phantomjs --web-security=false

Make sure /data/phantomjs directory exists and writable.

Let's see if this will help, perhaps it's cookies, localStorage or cache issue, as it can't be stored in memory is some special circumstances.

liu0fanyi commented 7 years ago

Hello @dr-dimitru I have tried phantomjs directly with up flags: phantomjs --load-images=false --ssl-protocol=any --ignore-ssl-errors=true --disk-cache=true --disk-cache-path=/data/phantomjs --cookies-file=/data/phantomjs/cookies.txt --local-storage-path=/data/phantomjs --local-to-remote-url-access=true --offline-storage-path=/data/phantomjs --web-security=false /Users/xxx/meteor_test/.meteor/local/build/programs/server/assets/packages/jazeee_spiderable-longer-timeout/lib/phantom_script.js "http://localhost:3000"

It was ok, I dont get error info

cookies.txt:

[General]
cookies="@Variant(\0\0\0\x7f\0\0\0\x16QList<QNetworkCookie>\0\0\0\0\x1\0\0\0\x6\0\0\0Qajs_user_id=null; expires=Sun, 27-May-2018 13:37:12 GMT; domain=localhost; path=/\0\0\0Rajs_group_id=null; expires=Sun, 27-May-2018 13:37:12 GMT; domain=localhost; path=/\0\0\0__ga=GA1.1.843230367.1495892233; expires=Mon, 27-May-2019 13:37:13 GMT; domain=localhost; path=/\0\0\0\x61_gid=GA1.1.1230482198.1495892233; expires=Sun, 28-May-2017 13:37:13 GMT; domain=localhost; path=/\0\0\0|ajs_anonymous_id=%22d640a636-6c70-4b8e-a0cd-2b480ad068fc%22; expires=Sun, 27-May-2018 13:37:13 GMT; domain=localhost; path=/\0\0\0G_gat=1; expires=Sat, 27-May-2017 13:38:13 GMT; domain=localhost; path=/)"

http_localhost_3000.localstorage:

�����z!11�tableItemTableItemTableCREATE TABLE ItemTable (key TEXT UNIQUE ON CONFLICT REPLACE, value BLOB NOT NULL ON CONFLICT FAIL)[!}1indexsqlite_autoindex_I����%Iajs_user_traits{}/]ajs_group_properties{}!0debugundefined
!���"Iajdebug%
dr-dimitru commented 7 years ago

@liu0fanyi it's a great news. I'm going to update this package to include those flags. Stay tuned

dr-dimitru commented 7 years ago

@perak @liu0fanyi ,

No update is needed, custom flags can be passed via METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS env.var. So, I'm going to simply update the docs.

Let me know if it will work for you

perak commented 7 years ago

@dr-dimitru @liu0fanyi Thanks, I'll try and let you know. I hope it works... I already spent too much time with this and I'm clise to give up and stick to prerender. BTW, the same error happens with original spiderable package and also with few other forks.

dr-dimitru commented 7 years ago

@perak keep me updated. This should solve it. Updated docs with explanation for every flag is on the way

perak commented 7 years ago

:+1: tnx!

perak commented 7 years ago

BTW, @dr-dimitru, I'm just curious, can you reproduce/do you have the same issue?

meteor create app
cd app
meteor add spiderable accounts-password
meteor

curl http://localhost:3000/?_escaped_fragment_=

and... kaboom! select: invalid argument

(didn't tried yet to set env var as you suggested in last messages, typing from mobile phone, will try as soon as I reach my computer)

dr-dimitru commented 7 years ago

@perak Just tried on MacOSX@10.12.5 and phantomjs@2.1.1 - no, no error. But this one is familiar to me, either it was back in 2015, it was caused by localStorage/cache/appcache/cookies.

The one difference phantomjs I'm using is always locally compiled from sources. See:

perak commented 7 years ago

The same OS and phantomjs but installed via brew install phantomjs. Also tried phantom 1.9.x.

And the same problem on Ubuntu 16.04 & phantomjs.

OK, now I'm with my computer...

dr-dimitru commented 7 years ago

Published as v1.3.3.

Thank you for contribution. Let me know how it will work for you.

perak commented 7 years ago

@dr-dimitru worked on hello world app, but my excitement is quickly stopped when I tried the same thing on real project - the same issue :'(

Hello world - before setting env var - error. After setting env var - works like a charm. Real project - before and after setting env var the same issue.

/data/ is writable (chmod 777 just for testing) and phantom writes something there.

BTW, I also tried to increase maxBuffer but no luck.

perak commented 7 years ago

Increased bufferSize to 500 MB and now I got "invalid string length" (after ~5 seconds waiting). Looks like rendered page is too big (?) but it's not. See: https://www.meteorkitchen.com there is no a lot of text/images there...

perak commented 7 years ago

Maybe problem is somewhere in my code... but where? All subscriptions returns proper cursor or this.ready() ... simply don't know where to look.

dr-dimitru commented 7 years ago

@perak I have no error requesting https://www.meteorkitchen.com with phantomjs. But it's not getting rendered, I'm getting same results as I were using curl. Going to investigate it

perak commented 7 years ago

Somehow Meteor is not accessible. I made simple phantom script that waits while typeof Meteor is undefined inside page.eval and that takes forever. (?). When I run kitchen locally, then same script returns errors like "undefined is not a function" (but no errors when I run in normal browser e.g. chrome). Strange, I spent almost all night trying to debug....

dr-dimitru commented 7 years ago

@perak working on it, against of meteorkitchen

perak commented 7 years ago

Great! Thank you very much for your help!

perak commented 7 years ago

This script runs forever (Meteor is undefined) :

var url = "https://www.meteorkitchen.com";
//var url="http://localhost:3000";

var page = require('webpage').create();

page.onConsoleMessage = function(msg) {
  console.log(msg);
}

var isReady = function () {
  return page.evaluate(function () {
    if(typeof Meteor === 'undefined') {
      console.log("Meteor is undefined.");
      return false;
    }
    return true;
  });
};

var dumpPageContent = function () {
  var out = page.content;
//  out = out.replace(/<script[^>]+>(.|\n|\r)*?<\/script\s*>/ig, '');
//  out = out.replace('<meta name="fragment" content="!">', '');
  console.log(out);
};

page.open(url, function(status) {
  console.log("*******" + status);

  if(status === 'fail') {

    phantom.exit();

  } else {

    setInterval(function() {
      if(isReady()) {
        dumpPageContent();
        phantom.exit();
      } else {
        console.log("Not ready");
      }
    }, 100);

  }

});
perak commented 7 years ago

If I set url to any other meteor application, for example "https://www.meteor.com", it works normally. So, something is wrong with my code - but it works in normal browser without any errors. Something confuses phantomjs :)

dr-dimitru commented 7 years ago

If I set url to any other meteor application, for example "https://www.meteor.com", it works normally. So, something is wrong with my code - but it works in normal browser without any errors. Something confuses phantomjs :)

Same for me, Meteor throws TypeError: null is not an object (evaluating 'renderStatus.ready') While window.Meteor simply not defined. I've tried a dozen other Meteor based websites, this happens only at meteorkitchen.

I'll keep this updated during further investigation.

dr-dimitru commented 7 years ago

Actually nothing is defined on window:

{hasDDP: !!window.DDP, hasMeteor: !!window.Meteor, hasSpiderable: !!window.Spiderable, hasTracker: !!window.Tracker, hasPackages: !!window.Package}

Every variable returns false

perak commented 7 years ago

Yes.. but when you open site in normal browser, everything is there :o

perak commented 7 years ago

By the way, when running meteor kitchen locally, the same script returns this output:

Petars-MacBook-Pro:~ pera$ phantomjs testph.js
2017-05-28T09:07:23 [CRITICAL] QNetworkReplyImpl: backend error: caching was enabled after some bytes had been written
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/es5-shim.js?hash=adc3c6270d5697523fe2a72e73428390b7eba83a:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/promise.js?hash=c18c48f485b5a5bf3a8b843f15ef1a1a88bb7eba:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/ecmascript-runtime.js?hash=361600ec8a6001af11f5b092beb6cac155a58cd8:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/babel-runtime.js?hash=542c0824bd1513d6479eef12c03f326cf13cc471:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/random.js?hash=a3be1ee923a6fc933f063c7f8de3e15243e12f47:18
TypeError: undefined is not an object (evaluating 'Package.random.Random')

  http://localhost:3000/packages/mongo-id.js?hash=345d169d517353f8146292b4abd24061721f8b26:19
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/geojson-utils.js?hash=b204c7d4caf119e6883522fb87c6cce060724bf0:17
TypeError: undefined is not an object (evaluating 'Package['mongo-id'].MongoID')

  http://localhost:3000/packages/minimongo.js?hash=5f645b1615e1812c2bfd57e137c77c24162c7884:23
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/check.js?hash=87c633843915b879a0c9676ea81f1cd351296e41:17
TypeError: undefined is not an object (evaluating 'Package.random.Random')

  http://localhost:3000/packages/retry.js?hash=1e409617b538ff3e2b0238b15e45b3380c51a224:18
TypeError: undefined is not an object (evaluating 'Package.check.check')

  http://localhost:3000/packages/ddp-common.js?hash=d42359bcace6c66ac90e2782193494253ee68155:17
TypeError: undefined is not an object (evaluating 'Package['ecmascript-runtime'].Symbol')

  http://localhost:3000/packages/reload.js?hash=628b069673bffbc7390ba84ece8809c8c88c2eed:18
TypeError: undefined is not an object (evaluating 'Package.check.check')

  http://localhost:3000/packages/ddp-client.js?hash=d69811b75e636077a323c16b077a38a29bacca9e:17
TypeError: undefined is not an object (evaluating 'Package['ddp-client'].DDP')

  http://localhost:3000/packages/ddp.js?hash=25dc3f428447c81620c91c4245dbc6e4f7d32fb7:14
TypeError: undefined is not an object (evaluating 'Package.minimongo.LocalCollection')

  http://localhost:3000/packages/allow-deny.js?hash=0a3547d203dfd89d9484cad533c54cd0f4778263:18
TypeError: undefined is not an object (evaluating 'Package['allow-deny'].AllowDeny')

  http://localhost:3000/packages/mongo.js?hash=83e088259340bb5e2ce8c879da15b15b9592f8ee:17
TypeError: undefined is not an object (evaluating 'Package.random.Random')

  http://localhost:3000/packages/localstorage.js?hash=0e2106503b232ac80073b6e8ef206e988c5aca5b:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/jquery.js?hash=c57b3cfa0ca9c66400d4456b6f6f1e486ee10aad:17
TypeError: undefined is not an object (evaluating 'Package['mongo-id'].MongoID')

  http://localhost:3000/packages/observe-sequence.js?hash=8fe58036c6ba00c458f54c360a21fd0e41fb7ee0:19
TypeError: undefined is not an object (evaluating 'Package.jquery.$')

  http://localhost:3000/packages/blaze.js?hash=f33d3dfed63a491d24e3aa07ad66c24b5fe8c761:17
TypeError: undefined is not an object (evaluating 'Package.random.Random')

  http://localhost:3000/packages/accounts-base.js?hash=00b4c32478a678093a294cc73c7dbd8c59c65d48:20
TypeError: undefined is not an object (evaluating 'Package.random.Random')

  http://localhost:3000/packages/srp.js?hash=85fa5b3bc1440273f8fa5125df5443c09f337567:17
TypeError: undefined is not an object (evaluating 'Package['accounts-base'].Accounts')

  http://localhost:3000/packages/accounts-password.js?hash=43132122c568d428133aeec601bf39b36fee4a63:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/http.js?hash=9355a65a433bea87be60bc1fd90e0ef608af93e4:19
TypeError: undefined is not an object (evaluating 'Package['observe-sequence'].ObserveSequence')

  http://localhost:3000/packages/spacebars.js?hash=ebf9381e7fc625d41acb0df14995b7614360858a:17
TypeError: undefined is not an object (evaluating 'Package.blaze.Blaze')

  http://localhost:3000/packages/templating-runtime.js?hash=c18de19afda6e9f0db7faf3d4382a4c953cabe18:18
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/templating.js?hash=c2cf38de06efb47f67affb2dff9320e5eef33893:14
TypeError: undefined is not an object (evaluating 'Package['ddp-client'].DDP')

  http://localhost:3000/packages/spiderable.js?hash=9153598c0a51a94b4be39c04327fcdbda1c98226:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/reactive-dict.js?hash=fafa4f575f707596da31c349eb0ddb1f899f1e3d:21
TypeError: undefined is not an object (evaluating 'Package['reactive-dict'].ReactiveDict')

  http://localhost:3000/packages/session.js?hash=821b0746e602b3be69538d299d6866e222121b54:18
TypeError: undefined is not an object (evaluating 'Package.blaze.Blaze')

  http://localhost:3000/packages/ui.js?hash=039c55a98376abd03d9d8cd4100895861b897643:14
TypeError: undefined is not an object (evaluating 'Package.ui.Blaze')

  http://localhost:3000/packages/iron_dynamic-template.js?hash=7644dc7260de827ef1e361a75159fcc8af9fc074:17
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/iron_layout.js?hash=b2030df3beb941a1eb0eeaf4d68c7f4c145ec14a:17
TypeError: undefined is not an object (evaluating 'Package.jquery.$')

  http://localhost:3000/packages/iron_location.js?hash=1a6ee647a94fae1d34d1b5074ec4dfebfe6f1bd3:20
TypeError: undefined is not an object (evaluating 'Package['reactive-dict'].ReactiveDict')

  http://localhost:3000/packages/iron_controller.js?hash=eb63ea93809dcd3a8f40ad258e0997969a4d3ebc:20
TypeError: undefined is not an object (evaluating 'Package.blaze.Blaze')

  http://localhost:3000/packages/iron_router.js?hash=017cbcf91efe3e433391e5dcfa2f6ae06a124b46:17
TypeError: undefined is not an object (evaluating 'Package.mongo.Mongo')

  http://localhost:3000/packages/matb33_collection-hooks.js?hash=d44fd0eb02806747e1bb0bdc3938463e415c63ec:17
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/copleykj_livestamp.js?hash=ef554420cd1f033132c4f39b9d94be3b1aa89af1:17
public.ga.account has not been set in your settings.json file.
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/perak_markdown.js?hash=784988dc5780414e2236095d00ba62638520b25e:17
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/perak_user-roles.js?hash=bd0c5d285a60ce42de2fb1fa6694a9096523555c:18
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/perak_codemirror.js?hash=707580d7dd03fad857308eabf79ac5ea426ec87a:17
TypeError: undefined is not an object (evaluating 'Package['templating-runtime'].Template')

  http://localhost:3000/packages/perak_c3.js?hash=21b8af2fb4ac1cbbc360314a6fe28168ab6dd493:17
TypeError: undefined is not an object (evaluating 'Package.modules.meteorInstall')

  http://localhost:3000/packages/webapp.js?hash=8024f6bce97bd768bcff7fc9d76449e74f051e36:18
TypeError: undefined is not an object (evaluating 'Package['ddp-client'].DDP')

  http://localhost:3000/packages/livedata.js?hash=7cf1831a60b48e304b054aee1ae0f7e38ff35d09:14
TypeError: undefined is not an object (evaluating 'Package.retry.Retry')

  http://localhost:3000/packages/autoupdate.js?hash=1fd9cf3472adaa6887170d88ab5ea1ddabf695fa:19
TypeError: undefined is not an object (evaluating 'Package.mongo.Mongo')

  http://localhost:3000/packages/global-imports.js?hash=7ac75d48c3349e08288841770f6bb49691609f5b:3 in global code
ReferenceError: Can't find variable: meteorInstall

  http://localhost:3000/app/app.js?hash=da3131f4d51c745ea9e6ef70ed75a435507f5b25:1 in global code
TypeError: undefined is not an object (evaluating 'Package['accounts-base'].Accounts')

  http://localhost:3000/packages/service-configuration.js?hash=42ac9ae8eb44f3e73762f9cb0003410397021984:17
*******success
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
Meteor is undefined.
Not ready
^C
Petars-MacBook-Pro:~ pera$ 

again - in normal browser - no errors.

dr-dimitru commented 7 years ago

One idea popped up - ES6 is not available in phantomjs. Could you make sure there is no ES6, and es5-shim package is installed.

BTW, checking Package['es5-shim'] looks like it's there.

dr-dimitru commented 7 years ago

Could you make sure there is no ES6, and es5-shim package is installed.

I've meant everything is processed by Babel to ES5

perak commented 7 years ago

This is my package list:

meteor-base@1.0.4             # Packages every Meteor app needs to have
mobile-experience@1.0.4       # Packages for a great mobile UX
mongo@1.1.17                   # The database Meteor supports right now
blaze-html-templates@1.0.4 # Compile .html files into Meteor Blaze views
reactive-var@1.0.11            # Reactive variable for tracker
tracker@1.1.3                 # Meteor's client-side reactive programming library

standard-minifier-css   # CSS minifier run for production mode
standard-minifier-js    # JS minifier run for production mode
es5-shim@4.6.15                # ECMAScript 5 compatibility for older browsers.
ecmascript@0.7.3              # Enable ECMAScript2015+ syntax in app code
shell-server            # Server-side component of the `meteor shell` command

accounts-password@1.3.6
accounts-base@1.2.17
http@1.2.12
email@1.2.1
spiderable
ejson@1.0.13
random@1.0.10
session@1.1.7                 # Client-side reactive dictionary for your app
iron:router@=1.0.13
reactive-dict@1.1.8
fortawesome:fontawesome
matb33:collection-hooks
copleykj:livestamp
momentjs:moment
datariot:ganalytics
semantic:ui
flemay:less-autoprefixer
jparker:gravatar
simple:highlight.js
perak:user-roles
perak:markdown
perak:codemirror
perak:human2machine
perak:c3
gfk:mailgun-api
meteorhacks:aggregate
perak commented 7 years ago

Hum.... how to test there is no es6 ... ?

perak commented 7 years ago

Btw, variables you are testing should not be in window but in this (if you are doing that inside page.eval function) ... ?

dr-dimitru commented 7 years ago

Hum.... how to test there is no es6 ... ?

Select Meteor here: https://babeljs.io/docs/setup/#installation

Btw, variables you are testing should not be in window but in this (if you are doing that inside page.eval function) ... ?

Other websites returns true for !!window.Meteor inside page.eval

dr-dimitru commented 7 years ago

Btw, variables you are testing should not be in window but in this (if you are doing that inside page.eval function) ... ?

Tested with !!this.Meteor inside page.eval with same results

perak commented 7 years ago

Ah.. ok.

BTW, I am doing only one "strange thing" - maybe that can cause problem. See my package.json

{
  "name": "kitchen-gui",
  "private": true,
  "scripts": {
    "start": "meteor run"
  },
  "dependencies": {
    "babel-plugin-transform-builtin-extend": "^1.1.2",
    "babel-polyfill": "^6.23.0",
    "babel-runtime": "^6.20.0",
    "blaze2gasoline": "^0.1.2",
    "meteor-node-stubs": "~0.2.4"
  },
  "babel": {
    "plugins": [
      "babel-polyfill",
      [
        "babel-plugin-transform-builtin-extend",
        {
          "globals": [
            "Error",
            "Array"
          ]
        }
      ]
    ]
  }
}

I am using babel-plugin-transform-builtin-extend which enables me to instantiate Array and Error classes. That is required by my code... but at the end of the day, it just converts code to ES5.

dr-dimitru commented 7 years ago

Found something:

  1. Main meteor's .js file is not evaluated
  2. If I'm trying to access global in a page.eval it throws:
    null is not an object

    Event without attempt to read a property of global simply checking its existence with !!global leads to this exception.

Any idea why this may happen?

Main meteor's .js file is not evaluated

I'm assume it's caused by unavailability of global variable

perak commented 7 years ago

I will try to remove one by one package and comment code part by part until I find what's the problem...

dr-dimitru commented 7 years ago

@perak please run tests against pre-1.3.4 (not published yet). Hope it will have some minor positive effect.

perak commented 7 years ago

OK, thank you! I will do it when I reach my computer (most likely ~10 hours after now).