<div class=3D'footer' style=3D'margin-top: 10px;'><p>=E2=80=94<br><a href=3D"https://gitlab.com/gitlab-org/gitlab-development-kit/merge_req=uests/54#note_1111544">View it on GitLab</a><script type=3D"application/ld+json">{"@context":"http://schema.org","@ty=pe":"EmailMessage","action":{"@type":"ViewAction","name":"View Merge requ=est","url":"https://gitlab.com/gitlab-org/gitlab-development-kit/merge_re=quests/54#note_1111544"}}</script>You're receiving this notification because you are a member of the GitLab=.org / GitLab Development Kit project team.</p></div>
GitHub footer:
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>Reply to this email directly or <a href="https://github.com/OneBusAway/onebusaway-iphone/pull/418#issuecomment-96448442">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABIzTFhXRPJLm54dMx-vyWsOQ56dS9oZks5oDW6agaJpZM4EIoiH.gif" width="1" /></p><div itemscope itemtype="http://schema.org/EmailMessage"> <div itemprop="action" itemscope itemtype="http://schema.org/ViewAction"> <link itemprop="url" href="https://github.com/OneBusAway/onebusaway-iphone/pull/418#issuecomment-96448442"></link> <meta itemprop="name" content="View Pull Request"></meta> </div> <meta itemprop="description" content="View this Pull Request on GitHub"></meta></div>
Per https://developers.google.com/gmail/markup/reference/go-to-action Json-Ld and Microdata formats are both acceptable but I'm wondering if Google has a problem with the "3D"s showing up before the single and double quote marks as well as the line truncation method.
Since Gmail is displaying the emails properly theoretically Gmail is processing them correctly but I'm just guessing as to potential problems. Has anyone been able to attempt to send schemas to themselves from GitLab and seen if it works (see https://developers.google.com/gmail/markup/registering-with-google)... I'm having issues getting my dev environment to send emails so have been unable to test.
Designs
An error occurred while loading designs. Please try again.
Child items
0
Show closed items
GraphQL error: The resource that you are attempting to access does not exist or you don't have permission to perform this action
No child items are currently open.
Linked items
0
Link issues together to show that they're related or that one is blocking others.
Learn more.
@bbodenmiller when this was developed few versions ago I had it working correctly on the dev environment, actions showed up in my test inbox and all the checks passed, so I don't know if something changed in the meantime. If you check the rake task, it generates the email with dummy data that gets sent for whitelisting.
My suspicion was that the dummy email was the issue as I got asked if the email was sent from the production server. This was the case but the data was not real to prevent user data exposure.
BTW, setting up environment to try this out is a very big hassle so you will need some patience to get it up and running.
@marin can you remove all dummy date from GitLab completely (to prevent anyone submitting dummy data again or having the suspicion that we used dummy data) and generate an email based on production data? I think we should try again.
@sytses If I remove dummy data I can remove the whole rake task as it is built around the dummy data. Updating the task will mean rewriting it completely. It can be done when attempting this task again but keep in mind that setting up environment for this is extremely time consuming(unless something changed in the meantime ofcourse). Which one do you prefer?
@sytses Some work still needs to be done as it seems that something broke the rendering of the required data like Ben mentioned at the description of this issue.
I can add this to my TODO list if you think we should try applying again during 7.14 milestone.
At the moment I am trying to understand why some emails get rendered properly and some emails have the html escaped which will cause equal to be escaped, eg.<div class=3D'content'> .
After some investigation I am suspecting the issue to be at Content-Transfer-Encoding which gets set to quoted-printable by default. github emails are forced to 7-bit.
On a test machine I have setup, forcing this on all emails made a change but on a production machine that doesn't seem to be the case.
At the moment I am just trying to see how to go around it because 7-bit doesn't seem like something we could use due to our Emails on push service and the limitation 7-bit brings in the form of maximum number of characters(1000).
Some nice info about content transfer encoding I found on this SO article.
Well this is/was interesting. I found a character in layout/notify.html that I suspect caused the breakage for the mails rendering. This line in notify.html is not a backslash dash but it is \�~@~T .
After I've replaced that line the email gets rendered without escaping and email markup passes.
It is easy to replace the broken character with something, bit more difficult to make it look good but ultimately the question now is what happens if the email contains a comment with non-ascii characters.
Curious because forcing content transfer encoding might cause issues.
That already happened and the results are (sadly) expected. The Content-Transfer-Encoding got set to quoted-printable and the output of the email looks broken:
----==_mimepart_55ae4f796e99_1a8f5842b0876c8Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: quoted-printableMarin pushed to branch master at Marin / GitLabCommits:e043265a by Marin Jankovski at 2015-07-21T13:56:07Zee?- - - - -1 changed file:- README.mdChanges:=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D==3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3DREADME.md=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D==3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
After some more investigation it looks like this is a situation which cannot be easily fixed(if it can be fixed at all).
However, I do not think it is even required to fix it for cases where there are non-ascii characters. Looking at some other emails I received it is expected to receive an email with 7bit content-transfer-encoding with ascii chars and quoted-printable when there are some non-ascii chars.
What I will do now is:
Change the char that caused the failures on all emails => In !1024 (merged)
remove the rake task and the doc pointing to the rake task => !1024 (merged)
Go through the required steps from the google documentation and confirm all is in order
prepare a new request and apply
reconsider how to radiate this information for other GitLab users(maybe only document the process)
@sytses I would need admin access for email account used in dev.gitlab.org and possibly to the DNS settings of dev.gitlab.org so not sure how easier that would be considering I might interrupt work during release for everyone
Since I did this before this time round it seems to go faster apart from setting up dkim verification which is not working as google is not generating the record yet. Possibly have to wait for the DNS records to propagate since everything was recently setup.
The environment is up and running, the emails get sent with the expected headers and pass the spf and dkim check. However, The emails also pass the email markup check but at the moment the emails I receive on the account are not showing the button.
At the moment I am debugging why this is the case.
Gmail only checks the SPF on the domain of your Return-Path: email. If you only rely on SPF and not DKIM your Return-Path: email must match the TLD of your From: email.
The highest-fidelity action available should be used. For example, if an interaction can be achieved by an In-App Action (One-Click, RSVP, Review), that must be used. For more complex interactions, Go-To Actions can be used.
Must deep link into the specific page on which the action can be performed.
Url will look like https://gitlab.com/gitlab-org/gitlab-ce/issues/2446#note_2064826
Label of button needs to reflect clear action to be taken and must be true to page the user is going to.
Label of action should not contain punctuation or all caps. Must be short and concise.
The label will show View Issue, View Merge request or View Commit.
We are currently only approving Go-To actions for very specific high-value usecase with high interaction rate (e.g. Flight Check-in, Shipment tracking links).
I hope they approve us.
Low failure rate and fast response for services handling Action Requests.
What does your company do? What is its main goal or product? *
GitLab.com is a free git repository hosting service. GitLab.com is a SaaS that runs GitLab Enterprise Edition which is a superset of
open-source GitLab Community Edition. GitLab.com offers unlimited private and public repositories for an unlimited number of public or private collaborators, completely free of charge.
Describe the email to which you plan to add schema. What is its purpose?
For Issues:
Project can have multiple collaborators. Each collaborator can participate in a discussion in an Issue, Merge request or Commit.Collaborator can decide to follow or not follow discussions by setting preference in their user profile. If they chose to follow discussions, they can participate in a discussion by commenting or by being mentioned in the discussion.Collaborartor can also choose to receive notifications in an Issue where they are not mentioned by subscribing to receive email notifications.Similarly, they can opt out of receiving notification for an Issue where they are a collaborator.Depending on the user-set preference as explained above, collaborator will receive an email notification for discussions.Email notification sent to the collaborator will contain the latest comment that triggered the notification. With the Gmail Action, collaborator should receive the email with Go-To action with label "View Issue". "View Issue" has a link that takes the collaborator directly to the comment that triggered the notification.
For Merge requests:
Project can have multiple collaborators. Each collaborator can participate in a discussion in an Issue, Merge request or Commit.Collaborator can decide to follow or not follow discussions by setting preference in their user profile. If they chose to follow discussions, they can participate in a discussion by commenting or by being mentioned in the discussion.Collaborator can also choose to receive notifications in a Merge request where they are not mentioned by subscribing to receive email notifications.Similarly, they can opt out of receiving notification for a Merge request where they are a collaborator.Depending on the user-set preference as explained above, collaborator will receive an email notification for discussions.Email notification sent to the collaborator will contain the latest comment that triggered the notification. With the Gmail Action, collaborator should receive the email with Go-To action with label "View Merge Request". "View Merge Request" has a link that takes the collaborator directly to the comment that triggered the notification.
For Commit:
Project can have multiple collaborators. Each collaborator can participate in a discussion in an Issue, Merge request or Commit.Collaborator can decide to follow or not follow discussions by setting preference in their user profile. If they chose to follow discussions, they can participate in a discussion by commenting or by being mentioned in the discussion.Depending on the user-set preference as explained above, collaborator will receive an email notification for discussions.Email notification sent to the collaborator will contain the latest comment that triggered the notification. With the Gmail Action, collaborator should receive the email with Go-To action with label "View Commit". "View Commit" has a link that takes the collaborator directly to the comment that triggered the notification.
A very very low rate of spam complaints from users.
We had 3 complaints for the past 30 days for several hundred thousand emails we've sent. Over the period of 6 months where we've sent several hundred thousand emails over one million we had 35 spam complaints. I would call this a very, very low rate of spam complaints. We also have an ongoing effort to make this even lower by adding user report option.
Consistent history of sending a high volume of mail from your domain (order of hundred emails a day minimum to Gmail) for a few weeks at least.
Daily we send anything between several thousand to a 13 thousand emails. Weekends being lower than workdays ofcourse. This has been the trend for the past 3 months at least.
I would say we are fulfilling this easily too.
According to all questions and answers given above I am confident that we are ready to apply to Google for this. I will start filling in the registration form and send the request.
Marin,Great news, your email (gitlab at gitlab.com) has been whitelisted and your actions (view issue, view merge, view commit) are now live. Please feel free to get in touch if you have any questions.