ãã¹ãã§ã«ããŒãããŠããªãã³ãŒãã®éšåããŸãã¯å®éã«ã¯ãããã³ãŒããç¹å®ããã«ã¯ãã«ãã¬ããžã¬ããŒããçæãããšäŸ¿å©ã§ãã å¥ã®äœ¿çšäŸã¯ãç¹å®ã®PDFãã¡ã€ã«ã®åé¡ãåæãããšãã«PDF.jsã®ã©ã®éšåãé¢é£ããŠãããããã°ããç¹å®ããããšã§ãïŒããã¯ãæ°ããå¯çš¿è ã«ãšã£ãŠç¹ã«åœ¹ç«ã¡ãŸãïŒã
è€æ°ã®ããŒã«ããããŸãããç§ã¯https://github.com/gotwarlost/istanbulã§è¯ãçµéšãããŸãã
Travisãšçµ±åã§ããçµæãã«ããŒãªãŒã«ãªã©ã®å€éšãµãŒãã¹ã«å
¬éã§ããŸããããšãã°ãhttpsïŒ//coveralls.io/github/Rob--W/cors-anywhere ïŒ branch = masterïŒhttpsãšçµ±åïŒ //github.com/Rob--W/cors-anywhere/commit/f9af03e76249b4dd38722b459293773ccddb6c7dïŒã
PDF.jsã«ã¯ãç§ãç¥ã£ãŠããããŸããŸãªå®è¡æ¹æ³ããããŸãïŒè©³çŽ°ã«ã€ããŠã¯ã gulpfile.js
ãåç
§ããŠãã ããïŒã
generic
ãã«ãã¿ãŒã²ããã«ãã£ãŠäœæããããã€ããªã«äŸåããŸãããã®ãã€ããªã¯ãbabelã§ãã©ã³ã¹ãã€ã«ãããwebpackïŒgulpfile.jsã§æ§æïŒã«ãã³ãã«ãããã³ãŒãã䜿çšããŸããgeneric
ãã«ãã¿ãŒã²ããã«ãã£ãŠç°ãªããŸãïŒçæ³çã«ã¯ãå ã®ãœãŒã¹ã®ã«ãã¬ããžçµ±èšãååŸããŸãããæåã«ããã©ãŠã¶ãŒ/ Node.jsã§çŽæ¥å®è¡ãããçæãããJSãã¡ã€ã«ã®ã«ãã¬ããžçµ±èšã決å®ããããšãã§ããŸãïŒç°¡åãªå ŽåïŒã
unittestcli-Node.jsã§PDF.jsã®ããã€ãã®ãŠããããã¹ããå®è¡ããŸãïŒæå°éã®ãœãŒã¹å€æŽã§ãbabelã«ããå€æã®ã¿ïŒã
browsertest-ãã©ãŠã¶ã§ãã¹ããå®è¡ããŸãïŒChromeãšFirefoxããã¹ãããŸãïŒã ããã¯ãgeneric
ãã«ãã¿ãŒã²ããã«ãã£ãŠäœæããããã€ããªã«äŸåããŠããŸãããã®ãã€ããªã¯ãbabelã§ãã©ã³ã¹ãã€ã«ãããwebpackã«ãã³ãã«ãããã³ãŒãã䜿çšããŸãã
ãªãããšãã泚æbrowsertest
åç
§ãã¹ããå®è¡ããŸãããŸããããŸãunittest
ãšã¯å¯Ÿç
§çã«ããã©ãŠã¶ã§ãŠããããã¹ãã®å®å
šãªã»ããïŒå®è¡ããã³ãã³ãunittestcli
ãµãã»ããã®ã¿ãå®è¡ããŸãæ¢åã®ãŠããããã¹ãã®ïŒã
ããã«ã PDFJS_NEXT
ãã«ããã©ã°ãèšå®ãããŠããå ŽåïŒ gulpfile.js
ä»ã®ãã«ããã©ã°ã®ããã«ããŸãã¯ã³ãã³ãã©ã€ã³åŒæ°ãšããŠïŒããBabelã䜿çšããå€æãã¹ããããã¹ãããã§ããããšã«æ³šæããŠãã ããã ã³ãŒãã¯ãŸã Webpackã«ãã³ãã«ãããŠããŸãããå°ãªããšãå€æã¹ããããåé¿ããããšã¯å¯èœã§ãã
@ Rob--WIã¯ããã«åãçµã¿ãã
ããªãã®ãã®ã§ãïŒ ãäžæãªç¹ãããããŸããããïŒã§ããã°IRCã§ïŒãç¥ãããã ããã
@timvandermeij KarmaããŒã«ã䜿çšããããšãèããŠããŸããããã¯ãã€ã¹ã¿ã³ããŒã«ã®ã³ãŒãã«ãã¬ããžãšã³ãžã³ã§åäœããŸãããã¹ãã®å®è¡ã«ã€ããŠçµ±èšã確èªããããããHTMLã¬ããŒããäœæã§ããŸããéå§ããã®ã«è¯ãæ¹æ³ã§ããïŒ
Karmaã䜿çšããŠããã¹ãã¬ããŒããååŸããŸããhttps://drive.google.com/file/d/0ByddvU1PKkWaWEZTWHFYT0Y0aTg/view?usp=sharing
ãã ãããã¹ãã«ãã¬ããžçµ±èšã¯è¡šç€ºãããŠããŸããhttps://drive.google.com/file/d/0ByddvU1PKkWaS1ZiT1dobU1DQUk/view?usp=sharing
@ Divya063ããšãã°ãçŸåšã®ã³ãŒããGithubã®pdf.jsãã©ãŒã¯ã®ãã©ã³ãã«ããã·ã¥ããŠãã³ãŒããå ±æã§ããŸããïŒ å¿ èŠã«å¿ããŠwebpackãšbabelã®ã©ã¡ããå®è¡ããŠããã®ã§ããããã
ãŸããã©ã®ããŒãžã§ã³ã®Node.jsã䜿çšããŠããŸããïŒ
åçããããšãããããŸããããŒãã®ããŒãžã§ã³ã¯6.11.1ã§ãã ãã©ã³ãhttps://github.com/Divya063/pdf.js/tree/devãžã®ãªã³ã¯ã¯æ¬¡ã®
ãšã©ãŒã¯æ¬¡ã®ãšããã§ãã
Firefox 43.0.0
SyntaxErrorïŒã€ã³ããŒã宣èšã¯ãããã¬ãã«ã«ã®ã¿è¡šç€ºãããå ŽåããããŸã
Chrome 60.0.3112
Uncaught SyntaxErrorïŒäºæããªãããŒã¯ã³ã®ã€ã³ããŒã
ããã¯ãã³ãŒãã䜿çšåã«ãã©ã³ã¹ãã€ã«ãããŠããªãããšã瀺ããŠããŸãã çŸåšãESã¢ãžã¥ãŒã«ã®çµã¿èŸŒã¿ãµããŒãããããã©ã®ãã©ãŠã¶ã§ãããã©ã«ãã§æå¹ã«ãªã£ãŠããªãããïŒè©³çŽ°ïŒãæåã«ã³ãŒãããã©ã³ã¹ãã€ã«ããå¿ èŠããããŸãã
æåã®æçš¿ãç·šéããŠãPDF.jsã®ãã«ãã·ã¹ãã ã®ã©ãã§ãã©ã³ã¹ãã€ã«ãæ§æãããŠããããææããŸããã ãããããæ¢åã®ãã©ã°ã€ã³ã䜿çšããŠãã€ã¹ã¿ã³ããŒã«ãšããã«ãçµ±åããããšãã§ããŸãã ã¯ã€ãã¯æ€çŽ¢ã§ã¯https://github.com/istanbuljs/babel-plugin-istanbulã衚瀺ãã
ïŒFirefoxã®çŸåšã®å®å®ããŒãžã§ã³ã¯55ã§ããFirefox43ã§ãã¹ãããŠããŸããããããã¯å€ããŠãµããŒããããŠããŸãããå床ãã¹ãããåã«ãFirefoxã®ææ°ããŒãžã§ã³ã«ã¢ããã°ã¬ãŒãããããšããå§ãããŸãïŒ
@ Rob--Wãšã©ãŒã衚瀺ããŠããã ãããããšãããããŸããçµæã¯ããã«æŽæ°ãããŸãã
ãšã©ãŒã¡ãã»ãŒãžãå ±æã§ããŸããïŒ
ãŸããå¯èœã§ããã°ãbrowserifyã®ä»£ããã«webpackã䜿çšããŠã¿ãŠãã ãããããã¯ãwebpackããã§ã«äœ¿çšãããŠããããã§ãã ããããããšã§ããã©ãŠã¶ã§å®éã«äœ¿çšãããã³ãŒããã€ã³ã¹ãã«ã¡ã³ãåã§ããŸãã
ãŸãã.ideaããã®ä»ã®ãŠãŒã¶ãŒåºæã®ãããžã§ã¯ã/ IDEãã¡ã€ã«ããã§ãã¯ã€ã³ããŠããããšãããããŸãã æ¢åã®ãããžã§ã¯ãã«è²¢ç®ãããšãã¯ãé¢é£ã®ãªããã¡ã€ã«ããããžã§ã¯ãã«è¿œå ããªãããšããå§ãããŸããããã¯ããªããžããªãä¹±éã«ãªããããŒãžã®ç«¶åãçºçããããã§ãã æçµçãªãã«ãªã¯ãšã¹ãã§ã¯ããããã®ãã¡ã€ã«ãå«ããªãã§ãã ããã
ãã®åé¡ã¯ãŸã çºçããŠããŸããïŒ ã¯ãã®å Žåãç§ã¯ããã«åãçµã¿ãããšæããŸãã
ã¯ããããã«èªç±ã«åãçµãã§ãã ããã
@timvandermeij
ç§ã¯ããã«åãçµãã§ããŸããã ãã¹ããã«ããŒããããã«ã€ã¹ã¿ã³ããŒã«ã䜿çšããã¬ããŒãã衚瀺ããããã«ã«ããŒãªãŒã«ã䜿çšããŸããã å¿
èŠã«å¿ããŠãå¿
èŠãªå€æŽãå ããŸããã ãã ããã䜿çšããŠã«ããŒãªãŒã«ãå®è¡ãããšãã¯ãã€ã§ã
npm run coveralls
次ã®ãšã©ãŒãçºçããŸã
npm run coveralls
> [email protected] coveralls /home/shikhar/Desktop/mozillaPdfJs/pdf.js
> npm run cover -- --report lcovonly && cat ./coverage/lcov.info | coveralls
> [email protected] cover /home/shikhar/Desktop/mozillaPdfJs/pdf.js
> istanbul cover test/**/*.js "--report" "lcovonly"
Running test 1/16: test_first_run
Running test 2/16: test_first_run_incognito
Running test 3/16: test_storage_managed_unavailable
Running test 4/16: test_managed_pref
Running test 5/16: test_local_pref
Running test 6/16: test_managed_pref_is_overridden
Running test 7/16: test_run_extension_again
Running test 8/16: test_running_for_a_while
Running test 9/16: test_browser_update
Running test 10/16: test_browser_update_between_pref_toggle
Running test 11/16: test_extension_update
Running test 12/16: test_unofficial_build
Running test 13/16: test_fetch_is_supported
Running test 14/16: test_fetch_not_supported
Running test 15/16: test_fetch_mode_not_supported
Running test 16/16: test_network_offline
All tests completed.
No coverage information was collected, exit without writing coverage information
[error] "2017-12-17T11:00:06.112Z" 'error from lcovParse: ' 'Failed to parse string'
[error] "2017-12-17T11:00:06.116Z" 'input: ' ''
[error] "2017-12-17T11:00:06.116Z" 'error from convertLcovToCoveralls'
/home/shikhar/Desktop/mozillaPdfJs/pdf.js/node_modules/coveralls/bin/coveralls.js:18
throw err;
^
Failed to parse string
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] coveralls: `npm run cover -- --report lcovonly && cat ./coverage/lcov.info | coveralls`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] coveralls script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/shikhar/.npm/_logs/2017-12-17T11_00_06_136Z-debug.log
ã³ãŒããèŠãã«èŠåããã®ã¯é£ããã§ãã ããã®å¯çš¿è ãããªããšäžç·ã«èŠãããšãã§ããããã«ãã³ãŒãããã©ã³ãã«ããã·ã¥ã§ããŸããïŒ
@timvandermeijããã«ãããŸãã gemãã¡ã€ã«ã¯ç¡èŠããŠãã ããã ç§ã¯ãã§ã«ãããåé€ããŸããã
ã³ã¡ã³ã@timvandermeij
ã°ãŒã°ã«ãå°ãèŠããšããã®ãšã©ãŒã¯coveralls
ãlcov
圢åŒã®ããŒã¿ãååŸããŠããªãããšãæå³ããŠããããã«èŠããŸãã npm run cover -- --report lcovonly && cat ./coverage/lcov.info | coveralls
å
ã®åã
ã®ã³ãã³ãããå®éã«æåŸ
ããçµæãè¿ããã©ããã確èªã§ããŸãã
@timvandermeij
çŸåšã®äž»ãªåé¡ã¯ãã®å£°æã§ãNo coverage information was collected, exit without writing coverage information
ãã®ãããlcovãã¡ã€ã«ã¯åžžã«ç©ºçœã®ãŸãŸã§ããããããã£ãŠãããçºçããŸã
[error] "2017-12-17T11:00:06.112Z" 'error from lcovParse: ' 'Failed to parse string'
[error] "2017-12-17T11:00:06.116Z" 'input: ' ''
[error] "2017-12-17T11:00:06.116Z" 'error from convertLcovToCoveralls'
ã°ãŒã°ã«ã§ã¯ããããã¯éåžžã«äžè¬çãªãšã©ãŒã®ããã§ãã ãšã©ãŒã¯åºæ¬çã«ã€ã¹ã¿ã³ããŒã«ã«ãããŸãã åãããŒãžã§ã³ãåãæ¿ããŠã¿ãŸãããããšã©ãŒãçºçãç¶ããŸããã ãã ãããã¹ãŠã®å Žæã§ããã¹ãã¯lintãunittestãªã©ã§ã¯ãªããmochaã«ãã£ãŠè¡ãããŠãããããã»ãšãã©ïŒã»ãšãã©ïŒã®è§£å床ãmochaå°çšã§ãã ãããã¯ç§ã調ã¹ãããã€ãã®æ å ±æºã§ãã
https://github.com/gotwarlost/istanbul/issues/262
https://github.com/coryhouse/react-slingshot/issues/245
https://github.com/gotwarlost/istanbul/issues/496
ãšä»ã®ããã€ãããããŸãããå®éã«ã¯ã©ãã圹ã«ç«ã¡ãŸããã§ãã:(
ãã«ãã¯travisïŒ https://travis-ci.org/shikhar-scs/pdf.js/jobs/318422621 ïŒã§æž¡ãã
ãªããããªã£ãŠããã®ãããããããŸãããããžã£ã¹ãã³ã§æåãã人ãããããããã®ã§ãããã¯å¯èœã ãšæããŸãã https://bryce.fisher-fleig.org/blog/setting-up-istanbul-with-jasmine/index.htmlãæ©èœãããã©ããè©ŠããŠã¿ãŠ
@timvandermeij
ã«ãã¬ããžã¬ããŒããã€ãã«çæãããŠããŸãã ãã ããã€ã³ããŒãã¹ããŒãã¡ã³ããšãšã¯ã¹ããŒãã¹ããŒãã¡ã³ãã«åé¡ãçºçããããããã©ã³ã¹ãã€ã«ããŠãããã¹ãããå¿
èŠããããŸãã
Transformation error for /home/shikhar/Desktop/mozillaPdfJs/pdf.js/web/ui_utils.js ; return original code
'import' and 'export' may appear only with 'sourceType: "module"' (16:0)
ãã®ãšã©ãŒã¯ãã¹ãŠã®jsãã¡ã€ã«ã§çºçããŠããã®ã§ãããã«äœæ¥ããŠPRãæåºããŸãã
@timvandermeij
ããã«ãããããããŸãïŒãã«ããã¹ãšã«ãã¬ããžã®åŒã³åºãã
ãã ããã€ã³ããŒãã¹ããŒãã¡ã³ããšãšã¯ã¹ããŒãã¹ããŒãã¡ã³ããååšããããããããã®ãã¡ã€ã«ã«å°éããåŸã§ãããããã¯å®å
šã«ãã¹ããããŠããªãããã0ïŒ
ã®ã«ãã¬ããžã¬ããŒããååŸããŠããŸãã ç§ã®ç¥ãéãããžã£ã¹ãã³ãã¹ãã®åã«ãããã®ãã¡ã€ã«ãES6ã«ãããªãã¡ã€ããå¿
èŠãããããããåé¡ã§ããããšã蚌æãããŠããŸãã ES6ã³ãŒãããžã£ã¹ãã³ã«æäŸããã«ã¯ã©ãããã°ããã§ããïŒ
ããhttp://jpsierens.com/use-es6-right-now/ã«èšèŒãããŠããããã«gulpãã¡ã€ã«ã«å€æŽãå ããããšã¯ã§ããŸããïŒ
ããªãã¯ç¢ºãã«è§£æ±ºçã«è¿ã¥ããŠããŸãã ã«ãã¬ããžã¬ããŒãããã lib
ãã¡ã€ã«ã§ã«ãã¬ããžãå®è¡ããŠããããã«èŠããŸããããã¯ãã§ã«ES6ã«ãã©ã³ã¹ãã€ã«ãããŠããã¯ãã§ãïŒhttps://github.com/mozilla/pdf.js/blob/6ac9e1c5ed0d5f067872b8482724c171c79566b2/gulpfileãåç
§ïŒã jsïŒL965ããã³https://github.com/mozilla/pdf.js/blob/6ac9e1c5ed0d5f067872b8482724c171c79566b2/gulpfile.js#L985ïŒã ãããšãããŠããããã¹ãèªäœããã©ã³ã¹ãã€ã«ãããŠããªããšããåé¡ã§ããïŒ ç§ã¯ãããã©ã®ããã«æ£ç¢ºã«æ©èœãããã«ã€ããŠã¯ããŸãããç¥ããŸããããããã§ããã°ããŠããããã¹ãã®ããã«Gulpfileã«ããã€ãã®å€æŽãå¿
èŠã«ãªãå ŽåããããŸãã
@timvandermeij
ãããšãããŠããããã¹ãèªäœããã©ã³ã¹ãã€ã«ãããŠããªããšããåé¡ã§ããïŒ ç§ã¯ãããã©ã®ããã«æ£ç¢ºã«æ©èœãããã«ã€ããŠã¯ããŸãããç¥ããŸããããããã§ããã°ããŠããããã¹ãã®ããã«Gulpfileã«ããã€ãã®å€æŽãå¿ èŠã«ãªãå ŽåããããŸãã
åé¡ã¯ãééã£ããã©ã«ããŒã§ãã¹ããå®è¡ããŠããããšã§ããã build>lib
ãã©ã«ããŒã«ã¯ãã§ã«ES6圢åŒã®ãããžã§ã¯ãå
šäœãå«ãŸããŠããããžã£ã¹ãã³ãšã«ããŒãªãŒã«ã®ãã¹ãªã©ããã¹ãŠãä¿®æ£ããŸããã
ãã1ã€ã®åé¡ã¯ã --report lcovonly
ã¹ããŒãã¡ã³ãã§ããã éæ³ã®ããã«ïŒçç±ã¯ããããŸãããïŒãã®éšåãã€ãªãæã®ã©ã€ã³ããåé€ãããšãã¬ããŒããçæããå§ããŸããã
npmã®åã ã®ã³ãã³ããcoverãå®è¡ãããã©ããã確èªã§ããŸã--- report lcovonly && cat ./coverage/lcov.info | ã«ããŒãªãŒã«ã¯å®éã«ããªããæåŸ ããçµæãè¿ããŸãã
ãããææããŠããã ãããããšãããããŸãã
æåŸã«ãã¬ããŒããçæããããšãã§ããŸãïŒtadaïŒå°ãæ²ãããã«èŠããŸãããæ£ç¢ºãªãã¡ã€ã«ãèªããšããã®çç±ãããããŸã-
ç§ã¯æããã«çæãããã¬ããŒããèªåã§ã¢ããããŒãããŠããŸããããããhttp://pdfjscoveragereport.bitballoon.comã®ãªã³ã¯ã§ãããããã¹ãããŠããŸãã ãããã®ãªã³ã¯ã«ã¢ã¯ã»ã¹ãããšãæåŸ ãããæ£ç¢ºãªã¬ããŒããåŸãããŸãã
ãã ãããããã®çµæã¯coveralls.io
ã¯åæ ãããŸããïŒcryïŒçç±ã¯ããããŸããã ãŸããè€æ°åã³ãããããåŸã§ãã coveralls
ã¯ãæè¿ã®ã³ãããã§ã¯ãªããéåžžã«å€ãã³ãããã«åºã¥ããŠãããžã§ã¯ããæ§ç¯ããŠããããšã«æ°ä»ããŸããããã®ãããã«ãã¬ããžã¯çæãããŸãããåžžã«0ã®ãŸãŸã§ãïŒçŸåšã¯0ã§ã¯ãããŸãããïŒã ããã解決ããæ¹æ³ãæããŠãã ããã
ãã ããããã§ãnpm run coveralls
ã¯ã build/lib/coverage/lcov-report
ãã©ã«ããŒã«ãããã®åœ¢åŒã®ã«ãã¬ããžã¬ããŒãå
šäœãæäŸããŸãã
ããããã¹ãŠãæçµçã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãããæåŸã®åé¡ã¯ããããã®ã¬ããŒããã«ããŒãªãŒã«ã«è¡šç€ºããããšã§ãã
ããã¯ç§ã®ææ°ã®ãã«ããžã®ãªã³ã¯ã§ãã https://travis-ci.org/shikhar-scs/pdf.js
ããã¯ç§ã®ææ°ã®ã³ããããžã®ãªã³ã¯ã§ãã
coveralls.ioã§ã¬ããŒããçæãããªãããšãé€ãã°ããã¹ãŠåé¡ãªããšæããŸãã ããã§ã¯ãããå€ãã®äººã ãã泚ç®ãéãã代ããã«ãã®åé¡ãæ©æã«è§£æ±ºããå¯èœæ§ããããããPRãçæããŸããïŒ
ãããã£ãïŒ å ±éã®ã¢ã€ãã¢ãæã£ãŠããããšã¯æ¬åœã«è¯ãããšã§ãããããŠãã¬ããŒãã¯æçµçã«ç§ãã¡ã«ãããäžããŸãã 確ãã«ãããã«å€ãã®åäœãã¹ããå¿ èŠã§ããããšãæ確ã«ç€ºããŠããŸãããæè¿åäœãã¹ããè¿œå ãããã¹ãŠã®ã¡ãœããã¯ãå®éã«ã¬ããŒãã§ã«ããŒãããŠããããã«ç€ºãããŠãããããå®å šã«åé¡ãªãããã«èŠããŸãã
ãã«ãããããã¡ã€ã«ã§ã¯ãªãããœãŒã¹ãã¡ã€ã«ã«å¯ŸããŠã«ãã¬ããžãå®è¡ã§ãããã©ããçåã«æããŸãã ããã«ãããç解ã容æã«ãªããŸããããã¯ã httpïŒ//pdfjscoveragereport.bitballoon.com/lib/display/metadata.js.htmlã§ã28è¡ç®ãã«ããŒãããŠããªãã®ã«ãã³ãŒãã§ã¯ãªãã代ããã«èªåçæãããã³ãŒãã§ããããšãããããŸãã é£ããããšãå€æããå Žåã¯ãæåã®ããŒãžã§ã³ãšããŠçŸåšã®ã¢ãããŒããå®è¡ãããã©ããŒã¢ããã®åé¡ã§ãããå®è¡ã§ããŸãã
ããã§ã¯ãããå€ãã®äººã ãã泚ç®ãéãã代ããã«ãã®åé¡ãæ©æã«è§£æ±ºããå¯èœæ§ããããããPRãçæããŸããïŒ
ã¯ããããã¯è¯ãèãã§ãã ãã®åŸãã¬ãã¥ãŒããã»ã¹ãéå§ãã察åŠãã¹ãåé¡ã確èªã§ããŸãã
å ±éã®ã¢ã€ãã¢ãæã£ãŠããããšã¯æ¬åœã«è¯ãããšã§ãããããŠãã¬ããŒãã¯æçµçã«ç§ãã¡ã«ãããäžããŸãã 確ãã«ãããã«å€ãã®åäœãã¹ããå¿ èŠã§ããããšãæ確ã«ç€ºããŠããŸãããæè¿åäœãã¹ããè¿œå ãããã¹ãŠã®ã¡ãœããã¯ãå®éã«ã¬ããŒãã§ã«ããŒãããŠããããã«ç€ºãããŠãããããå®å šã«åé¡ãªãããã«èŠããŸãã
ããå€ãã®åäœãã¹ãã§å®è¡ã§ããããšã¯ç¢ºãã§ãããæ²ããããšã«ãåäœãã¹ãã ãã§ã¯ãååãªãååãªãã¹ãã«ãã¬ããžã«è¿ã¥ãããšã¯ãããããªãã³ãŒãããŒã¹ã®å€§éšåããããŸãã
https://github.com/mozilla/pdf.js/issues/8632#issue -241690851ã§è¿°ã¹ãããã«ãããã€ãã®ç°ãªããã¹ãã¹ã€ãŒãããããŸããééã£ãŠããªãéãã gulp browsertest
ãããã«ãã¬ããžçµæãååŸããŸããå®éã®ãã¹ãã«ãã¬ããžãã©ã®ããã«èŠããããå®éã«ç¥ãããã«ã¯ãã»ãšãã©äžå¯æ¬ ã§ãã
@Snuffleupagus @timvandermeij
ä»æãã¹ããŒãã¡ã³ãcd build && cd lib && istanbul cover --include-all-sources jasmine-node test
ã䜿çšããŠããã¹ãŠã®ãã©ã«ããŒã§ã«ãã¬ããžã¬ããŒããåå¥ã«æ€çŽ¢ãã cd <directory name>
ã䜿çšããŠå¥ã®ãã£ã¬ã¯ããªãå€æŽãã jasmine-node <directory names and js files>
ã䜿çšããŠãã¹ãããŸããããç¡é§ã§ããã
ãã¹ãã¬ããŒãã¯æã
ïŒåžžã«ã§ã¯ãããŸãããïŒçæãããŸãããããã¯ç¹å®ã®ãã£ã¬ã¯ããªã«ãã1ã€ãŸãã¯2ã€ã®ES6圢åŒã®jsãã¡ã€ã«ãåå ã§çºçããŠããŸãïŒã«ãã¬ããžã¬ããŒãã®2ã3ïŒ
æªæºãããããŸããïŒã æ®å¿µãªããã import or export statements
ãå«ãjsãã¡ã€ã«ã¯ããã®åœ¢åŒã§ãšã©ãŒãè¿ããŸãã
Transformation error for /home/shikhar/Desktop/mozillaPdfJs/pdf.js/src/core/arithmetic_decoder.js ; return original code
'import' and 'export' may appear only with 'sourceType: "module"' (183:0)
Unable to post-instrument: /home/shikhar/Desktop/mozillaPdfJs/pdf.js/src/core/arithmetic_decoder.js
ãã®ãšã©ãŒã§ã¯ããã¡ã€ã«ã®ã«ãã¬ããžããŸã£ãããã§ãã¯ãããªãããã0ïŒ ã®ã¬ããŒããè¿ãããŸãã
ãã«ãããããã¡ã€ã«ã§ã¯ãªãããœãŒã¹ãã¡ã€ã«ã«å¯ŸããŠã«ãã¬ããžãå®è¡ã§ãããã©ããçåã«æããŸãã
ç¹°ãè¿ãã«ãªããŸããããœãŒã¹ãã©ã«ããŒã«ã¯ã€ã³ããŒãã¹ããŒãã¡ã³ããšãšã¯ã¹ããŒãã¹ããŒãã¡ã³ããå«ããã¡ã€ã«ãå«ãŸããŠãããããäžèšã®ãšã©ãŒãçºçããŸããããã«ãããé¢é£ãã¡ã€ã«ããŸã£ãããã§ãã¯ããããã«ãã¬ããžã0ïŒ ã«ãªããŸãã
ãããã£ãŠããã«ããã©ã«ããŒèªäœã§ãã¹ãããããšãäžå¯æ¬ ã§ãã
gulp browsertestããã«ãã¬ããžçµæãååŸããããšããå®éã®ãã¹ãã«ãã¬ããžãã©ã®ããã«èŠããããå®éã«ç¥ãããã«ã»ãŒäžå¯æ¬ ã§ãã
@Snuffleupagusãããã®ç¹å®ã®ãã¹ãã¯ã©ãã«ãããŸããïŒ äžèšã®jasmine-nodeã¹ããŒãã¡ã³ãã䜿çšããŠãããããçŽæ¥ãã¹ãããŠã¿ãããšãã§ããŸãã
é£ããããšãå€æããå Žåã¯ãæåã®ããŒãžã§ã³ãšããŠçŸåšã®ã¢ãããŒããå®è¡ãããã©ããŒã¢ããã®åé¡ã§ãããå®è¡ã§ããŸãã
ãããç§ãã¡ã¯ããããããè¡ãããšãã§ããŸãã
ã¯ããããã¯è¯ãèãã§ãã ãã®åŸãã¬ãã¥ãŒããã»ã¹ãéå§ãã察åŠãã¹ãåé¡ã確èªã§ããŸãã
確ãã«ãç§ã¯ããããå§ããŸãã
ïŒ9308ã®PRã¯ãåäœãã¹ãã®ã¿ã®ãã¹ãã«ãã¬ããžã®äŸã瀺ããŠããŸãã ãŠããããã¹ãã®ã»ãããéåžžã«å°ãããããçæãããã¬ããŒãã¯ã»ãšãã©äŸ¡å€ããããŸããã 詳现ã«ã€ããŠã¯ã httpsïŒ //github.com/mozilla/pdf.js/pull/9308#issuecomment-353588039ãåç §ããŠ
ãããã£ãŠããã©ãŠã¶ã®ãã¹ããååŸããã«ã¯ã次ã®ãã®ãå¿ èŠã§ãã
1ïŒã«å¯ŸåŠããã«ã¯ã gulpfile.js
ãç·šéããŠããªãã·ã§ã³ã§ã³ãŒãã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãè¿œå ããå¿
èŠããããŸããããã¯ããã©ãŠã¶ãŒã®window.__coverage__
ãªããžã§ã¯ãã«ãšã¯ã¹ããŒããããŸãã gulp-istanbul
ã圹ç«ã€ãããããŸããã ããã¥ã¡ã³ãã¯ãŸã°ãã«èŠããŸããã httpsïŒ//stackoverflow.com/questions/38208735/no-window-coverage-object-is-created-by-istanbul-phantomjsã§äŸãèŠã€ããŸãã
æé 1ãå®äºãããšããã©ãŠã¶ãŒã®ãã¹ãã«ã¯window.__coverage__
å€æ°ïŒãŸãã¯coverageVariable
æ§æãã©ã¡ãŒã¿ãŒã«å
¥åãããã®ïŒãå«ãŸããŸãã ã«ãã¬ããžã¬ããŒããååŸããã«ã¯ïŒ
XMLHttpRequest
ã§ãã¹ããµãŒããŒã«æçš¿ããŸããfs
ã䜿çšããŠãã¡ã€ã«ã«æžã蟌ã¿ãŸãã @ Rob--Wãã®ãããªè©³çŽ°ãªã¬ãã¥ãŒãããããšãã ãã©ããŒã¢ããããŠãã§ããã ãæ©ãå ã«æ»ããŸãã
ãã®ã³ã¡ã³ãã¯ãå®è£ ã®ãã³ããæäŸãã httpsïŒ //github.com/mozilla/pdf.js/pull/9308#issuecomment-353710595ããã®è³ªåã«å¯ŸåŠã
istanbul
ã¯ãã³ãŒãã«ã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãè¿œå ããã ãã§ãã ãã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ããšã¯ãå®è¡ããã®è¡ãã¹ããŒãã¡ã³ããªã©ãééããã¿ã€ãã³ã°ãæ€åºããJavaScriptã³ãŒããè¿œå ããããšãæå³ããããããã®å
¥åã¯å®è¡å¯èœã³ãŒãã§ãããšæ³å®ãããŸããã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãè¿œå ããåŸã«ã³ãŒãã倧å¹
ã«å€æŽããããšãçµæã®ã«ãã¬ããžã¬ããŒãã¯ç¡æå³ã«ãªããŸãã
ãã®ã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ã¯ãããã°ã©ã ã®å®è¡äžã«ãªã³ã¶ãã©ã€ã§å®è¡ã§ããŸãïŒããšãã°ãã³ãã³ãã©ã€ã³ããistanbul cover
ãå®è¡ãããšã istanbul
ã¯Node.jsã®require
ãžã®åŒã³åºããã€ã³ã¿ãŒã»ããããŸãã¢ãžã¥ãŒã«ãããŒããããåã«ã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ã䜿çšããŠã³ãŒããå€æããããå®è¡ãšã¯å¥ã«ïŒããšãã°ãããã°æçš¿ã瀺ãããã«ãã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãããã³ãŒãã¯ã³ãã³ãã©ã€ã³ã§çæãããå®è¡ã¯ãã©ãŠã¶ãŒã§å®è¡ãããŸãïŒã
ïŒ9308ã®çŸåšã®PRã§ã¯ãå®è¡ããããã°ã©ã ãšããŠjasmine
ã䜿çšããŠistanbul cover
ãåŒã³åºããŠããŸãã åã«è¿°ã¹ãããã«ãå¹æã¯gulp unittestcli
å®è¡ãšäŒŒãŠããŸããã€ãŸãããã¹ãã¯build/lib
ãã£ã¬ã¯ããªã«ãããã«ãæžã¿ã®ã©ã€ãã©ãªã«å¯ŸããŠå®è¡ãããŸãïŒããã¯test/unit/clitests.json
æ§æãããŸãïŒã ã ããã¯ãã«ãã¬ããžã¬ããŒãã«build/lib/
ãé€ããã¹ãŠã®ã«ãã¬ããžã0ãšè¡šç€ºãããŠããçç±ã説æããŠããŸãïŒ require
-dïŒNode.jsïŒã¢ãžã¥ãŒã«ã®ã¿ãbuild/lib
ãšbuild/streams/
- gulp unittestcli
ã¿ã¹ã¯å®çŸ©ã®æåŸãåç
§ããŠãã ããïŒã
æçšãªã«ãã¬ããžã¬ããŒããååŸistanbul
ãçµ±åããŠãã³ãŒããES6ãããã©ã³ã¹ãã€ã«ããããšãã«ãã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãè¿œå ãããããã«ããå¿
èŠããããŸãã ãã®åŸãã¢ãžã¥ãŒã«ããšã®ã¬ããŒããçæããããšãããå°é£ã«ãªããŸãïŒãã ããçè«çã«ã¯ããœãŒã¹ãããã¯ãããŒã¿ãå
ã®ãã¡ã€ã«ã«ãããããã®ã«ååãªæ
å ±ãæäŸããŸãïŒã
ããã¯èª²é¡ã§ãããBabelãgulpãistanbulãããã³ãœãŒã¹ããã/ã¢ãžã¥ãŒã«ã®äœ¿çšæ¹æ³ãååã«ç解ããå¿
èŠããããŸãïŒPDF.jsããã¹ãŠã®ã¢ãžã¥ãŒã«ããŸãšããŠPDF.jsãçæãããœãŒã¹ã³ãŒãã®é¢é£ããå Žæããã§ã«åç
§ããŸããã©ã€ãã©ãª-ïŒ8632ãåç
§ïŒã ãã®ç¥èã¯éåžžã«åœ¹ç«ã€ã®ã§ãææŠãæããªãã®ã§ããã°ãç§ã®æå°ã®äžã§ãããæ¢æ±ããããšãã§ããŸãã
ããããæ·±ãæãäžããåã«ããã£ãšç°¡åãªããšããå§ããŸãããããã©ãŠã¶ããã«ãã¬ããžã¬ããŒããååŸããããšã§ãã ãã©ãŠã¶ã§ãã¹ããå®è¡ããã«ã¯ã unittest
ãšbrowsertest
2ã€ã®æ¹æ³ããããŸãã Node.jsã§ãŠããããã¹ããå®è¡ããç°¡åãªæ¹æ³ã¯ãã§ã«ããã®ã§ã browsertest
çŠç¹ãåœãŠãŸãããã ãã©ãŠã¶ã®ãã¹ãã§ã¯åã
ã®ã¢ãžã¥ãŒã«ã¯äœ¿çšãããŸãããã generic
gulpã¿ãŒã²ããã«ãã£ãŠGENERIC_DIR
ãå¥åbuild/generic/
äœæãããPDF.jsã©ã€ãã©ãªã䜿çšãããŸãã ãããã£ãŠãã³ãŒãã€ã³ã¹ãã«ã¡ã³ããŒã·ã§ã³ãbuild/generic
ã«è¿œå ããã ãã§ååã§ãã build/generic/
ãå
¥åãã£ã¬ã¯ããªãšããŠäœ¿çšããçµæãcoverage/build/generic
æžã蟌ãããšããå§ãããŸãã
ãã®åŸã test/test_slave.html
ãå€æŽããŠã <script>
ã¿ã°ã«../build/generic/build/pdf.js
ãç¡æ¡ä»¶ã«ããŒãããã ../build/generic/build/pdf.js
ãŸãã¯../coverage/build/generic/build/pdf.js
ãããããæ¡ä»¶ä»ãã§ããŒãããå¿
èŠããããŸãã
éåžžã®pdf.js
ã©ã€ãã©ãªãã€ã³ã¹ãã«ã¡ã³ãåãããpdf.jsã©ã€ãã©ãªã«çœ®ãæãããšããã¹ãã®å®è¡æã«ã«ãã¬ããžçµ±èšãçæãããŸãã çµæã¯ã°ããŒãã«window.__coverage__
å€æ°ã«æ ŒçŽãããŸãã ãã©ãŠã¶ãŒå
ã®ãã¹ããã©ã€ããŒãçµäºãããïŒ test /driver.jsã®_quit
ã¡ãœããïŒããã®ã¬ããŒããã·ãªã¢ã«åããŠïŒããšãã°ã JSON.stringify(window.__coverage__)
ïŒã XMLHttpRequest
ãµãŒããŒã«éä¿¡ã§ããŸãã driver.js
ãã¡ã€ã«ã®ä»ã®å Žæãåç
§ããŠãã ãã- /tellMeToQuit
ã¡ãã»ãŒãžãéä¿¡ããåã«ãå¿
ããµãŒããŒã«ã¬ããŒããéä¿¡ããŠãã ãããããããªããšãã«ãã¬ããžã¬ããŒããéä¿¡ãããªãå¯èœæ§ããããŸããæ£ããïŒã
https://github.com/mozilla/pdf.js/blob/ba5dbc96326518ad716158ef040f61794cc72202/test/test.jsã§ãæ°ããã«ã¹ã¿ã APIåŒã³åºãã®æ°ãããã³ãã©ãŒãè¿œå ã§ãdriver.js
XMLHttpRequest
åŒã³åºãïŒ /tellMeToQuit
ã¡ãã»ãŒãžãªã©ïŒãèŠãŠã test.js
察å¿ãããã³ãã©ãŒãèŠã€ããŠãã ããã ãµãŒããŒåŽã§ã·ãªã¢ã«åãããJSONãåãåã£ããã fs.writeFileSync
APIã䜿çšããŠã«ãã¬ããžã¬ããŒãããã¡ã€ã«ã«æžã蟌ã¿ãŸãïŒãã¡ã€ã«ã®æžã蟌ã¿æ¹æ³ã瀺ãä»ã®äŸãtest.js
ãŸãïŒã ã
@ Rob--Wç§ã¯çŸåšæ°å¹ŽãŸã§å©çšã§ããŸãã...ãã®åŸã¯ç¢ºå®ã«è¿œãã€ããŸã
ãã®åŸãtest / test_slave.htmlãå€æŽããŠã.. / build / generic / build /pdf.jsãç¡æ¡ä»¶ã«ããŒãããªãããã«ããå¿ èŠããããŸãã
ãã®åŸãtest / test_slave.htmlãå€æŽããŠã.. / build / generic / build /pdf.jsãç¡æ¡ä»¶ã«ããŒãããªãããã«ããå¿ èŠããããŸãã
@ Rob--WIã¯ïŒtestFilterãã©ã¡ãŒã¿ãŒãæš¡å£ããããšã«ãã£ãŠïŒ tests.js
åæ§ã®ãã©ã¡ãŒã¿ãŒãäœæããããšã«æåããŸãããããããtest/test_slave.html
ã«çµã¿èŸŒãããšã¯ç§ã«ãšã£ãŠãŸã åé¡ã§ãã æ®ãã®å€æŽã«ã€ããŠã¯ãããäžåºŠPRã«ã¢ã¯ã»ã¹ããŠãã ãããæ°ããã³ããããããã·ã¥ããŸããã ïŒ9308
ãŸããPDF.jsã«åºæã®IRCãã£ãã«ãŸãã¯slack / gitter /ã¡ãŒãªã³ã°ãªã¹ãã«åå ããããã®ãªã³ã¯ãæäŸããŠããã ããã°å¹žãã§ãã
@ Rob--Wåé¡ã¯ãŸã çºçããŠããŸããïŒ ã¯ãã®å Žåãç§ã¯ããã«åãçµã¿ãããšæããŸãã
ããããšãããããŸããã
ããã«å¯Ÿããæåã®è©Šã¿ã¯ïŒ9308ã«ããã®ã§ããããã€ã³ã¹ãã¬ãŒã·ã§ã³ãšããŠäœ¿çšã§ããŸãã æå°éã®ããŒãžã§ã³ãã€ãŸãããŒã«ã«ã§ã®ã¿æ©èœããããŒãžã§ã³ãæ©èœãããããšã«çŠç¹ãåœãŠãŸãããã ããããTravisCIã§åäœããå¿
èŠã¯ãããŸããã ããŒã«ã«ã§ã«ãã¬ããžã¬ããŒããäœæã§ããã°ãããã¯ãã§ã«éåžžã«éèŠã§ãã ããŒã«ã«ã®å Žåã¯ãã€ã³ã¹ãã«ã¡ã³ãåãããåäœãã¹ããå®è¡ããããã«åºã¥ããŠã«ãã¬ããžã¬ããŒããçæããgulp coverage
ãšããã³ãã³ããäœæãããšããã§ãããã åäœããŠããŒãžãããŠããã®ã§ããã€ã§ããããç¹°ãè¿ãããšãã§ããŸãã
@timvandermeijã¯ãŸã ã¢ã¯ãã£ãã§ããïŒ ç§ããã£ãŠã¿ãããšãã§ããŸã
ã¯ããããã«èªç±ã«åãçµãã§ãã ããïŒ ç°¡åã«å§ããã¹ãã§ãã èããããã¢ãããŒãã«ã€ããŠã¯ã httpsïŒ //github.com/mozilla/pdf.js/issues/8632#issuecomment-455868037ãåç §ããŠ
@timvandermeijç§ããããã¿ãããšãã§ãããã©ããçåã«æã£ãŠããŸããïŒ ç§ãæã£ãŠãããã1ã€ã®å€§ããªè³ªåã¯ã代ããã«npmã¹ã¯ãªããã䜿çšããŠã¬ããŒããçæã§ãããã©ããããŸãã¯gulp
ã¿ã¹ã¯ã§ããå¿
èŠããããã©ããã§ãã
ç§ã¯gulp
ããŸã粟éããŠããŸãããããããããã®èŠä»¶ã§ãããã©ãããåŠã³ãããšæã£ãŠããŸã
誰ãããã«åãçµãã§ããªããšæãã®ã§ãã©ããïŒ æåã®ãããã§ã¯ã·ã³ãã«ã«ä¿ã€ããšãéèŠã§ãã ç§ãã¡ã¯Gulpãã¡ã€ã³ã®ããŒã«ãšããŠäœ¿çšããŠããã®ã§ãããã䜿çšããããšããå§ãããŸãããä»ã®ææ¡ãåãä»ããŠããŸãã å®è£ ã®ã¢ã€ãã¢ã«ã€ããŠã¯ã httpsïŒ //github.com/mozilla/pdf.js/issues/8632#issuecomment-455868037ãåç §ããŠ
ããã«åãçµã¿ãããšæããŸãã åé¡ã¯ãŸã éããŠããŸããïŒ ãããŠãã©ãã§ãã°ãããããç解ã§ããŸããïŒ
@jezhouã¯ããã«åãçµãã§ãããïŒ11580ã§ããããã®é²æ©ãéããŸããã ãã ããPRã¯æè¿æŽæ°ãããŠããŸããã
æŽæ°ããããšãããããŸãã ç§ã¯ããã«åãçµã¿å§ããããšãã§ãããšæããŸããïŒ ã©ã
詳现æ
å ±ãå
¥æã§ããŸããïŒ åé¡ãšããã®æ®ãã«ã€ããŠ??
2020幎5æ16æ¥åææ¥ãååŸ5æ56åRob Wuã notifications @ github.comã¯æ¬¡ã®ããã«æžããŠããŸãã
@jezhou https://github.com/jezhouã¯ããã«åãçµãã§ããŠãããã€ããäœããŸãã
ïŒ11580https ïŒ //github.com/mozilla/pdf.js/pull/11580ã§ã®é²æç¶æ³ã åºå ±
ãã ããæè¿ã¯æŽæ°ãããŠããŸãããâ
ããªããã³ã¡ã³ãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/mozilla/pdf.js/issues/8632#issuecomment-629637879 ã
ãŸãã¯è³Œèªã解é€ãã
https://github.com/notifications/unsubscribe-auth/AKUZ65CGSIZF6OMFZWENWF3RR2A77ANCNFSM4DSK7SGQ
ã