Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GAS V8 Runtime updates #15

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

lex3001
Copy link

@lex3001 lex3001 commented May 3, 2020

I made two changes so that this works with the new Google Apps Script V8 Runtime. It should still work with the old version too, but I am not 100% sure about that.

  1. change the check that uses "class" as an identifier ... GAS V8 does not appreciate that use of "class"
  2. update the code that determines the current time zone to put into the email PDF, the regular expression doesn't work in V8 because the long name of the time zone is returned instead of the abbreviated version; updated the code to use another method

@frankyw
Copy link

frankyw commented Jun 23, 2020

Can we get this merged?

function isa_(obj, class) {
return typeof obj == 'object' && typeof obj.constructor == 'undefined' && obj.toString() == class;
function isa_(obj, className) {
return typeof obj == 'object' && (typeof obj.constructor == 'undefined' || typeof obj.constructor == 'function') && obj.toString() == className;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

V8 is now supporting class and constructors. I've tested this update and it works for me


function gettz_() {
var d = new Date(); // now, or the specific date in question
var s = d.toLocaleString("en", {timeZoneName: "short"}).split(' ').pop();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This might fix part of the issue. In my case (US Mountain), the value is still not supported. The safest way is to get the timezone value from App script itself. I'll send a pull request for the code I have been using.

@@ -538,3 +538,4 @@ function md5_(str) {
chr = (chr < 0 ? chr + 256 : chr).toString(16);
return str + (chr.length==1?'0':'') + chr;
},'');
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not necessary

@emmanueljarri
Copy link

Hello, I confirm the current code doesn't work for me, but with modifications from @lex3001 it now works !

Can you please merge this fix in your repo which is the master please?

Thank you !

@frankyw
Copy link

frankyw commented Dec 16, 2020

@emmanueljarri I gave up on these guys a long time ago, seems like this project is abandoned sadly.

You are welcome to use my updated library with ID: 1CdCFwL5USI7KRfuVfoOWXJUCo4kGTL05fRwDPmpJVzETix09Nuy_v8bK

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants