Commit graph

38623 commits

Author SHA1 Message Date
bors-servo
cf725fc3f5
Auto merge of #24261 - paulrouget:fakeMeasureTExt, r=jdm
Temporary implementation of Canvas.MeasureText

@jdm: that will help with the babylonjs demos. Another approach is to implement that in JS and add it to the demos.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24261)
<!-- Reviewable:end -->
2019-09-25 11:38:36 -04:00
bors-servo
cfc05e1d27
Auto merge of #24259 - paulrouget:updates, r=jdm
webxr and offscreen gl context update

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24259)
<!-- Reviewable:end -->
2019-09-25 10:08:13 -04:00
Paul Rouget
7b2026287a update wpt tests 2019-09-25 15:01:32 +02:00
bors-servo
4f45b3bbe1
Auto merge of #24280 - ferjm:webm, r=jdm
Allow playing video/webm on Windows

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

This makes video/webm play on non-UWP Windows. I couldn't find the equivalent gstmatroska.dll on our GStreamer binaries for UWP.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24280)
<!-- Reviewable:end -->
2019-09-25 07:51:18 -04:00
Paul Rouget
3695fb1eb4 Temporary implementation of Canvas.MeasureText 2019-09-25 13:34:48 +02:00
bors-servo
a1c911f07f
Auto merge of #23686 - saschanaz:git-ignore, r=jdm
Ignore VSCode IDE files

<!-- Please describe your changes on the following line: -->

This ignores launch.json (to configure debugger) and `ipch/` (for IntelliSense).

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (GitHub issue number if applicable)

<!-- Either: -->
- [x] These changes do not require tests because it only changes gitignore.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23686)
<!-- Reviewable:end -->
2019-09-25 05:33:52 -04:00
bors-servo
46611b012e
Auto merge of #24268 - servo:jdm-patch-57, r=SimonSapin
Extend nightly WPT update timeout by an hour.

Jobs have been timing out more than usual recently, and on machines that don't have any clear resource hogging going on.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24268)
<!-- Reviewable:end -->
2019-09-25 03:58:14 -04:00
bors-servo
57961bd3b5
Auto merge of #24279 - servo:macos-build, r=jdm
Remove obsolete macOS build instructions

openssl is already installed through the Brewfile, and libffi needs no
environment variable anymore now that glib was fixed.

https://github.com/Homebrew/homebrew-core/pull/44446

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24279)
<!-- Reviewable:end -->
2019-09-25 02:22:25 -04:00
bors-servo
2be3c2a1af
Auto merge of #23987 - saschanaz:update-webidl, r=jdm
Update WebIDL parser

<!-- Please describe your changes on the following line: -->

This includes IDL mixin support.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes does not fix but helps #22539 / fixes #16244

<!-- Either: -->
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23987)
<!-- Reviewable:end -->
2019-09-25 00:59:36 -04:00
bors-servo
e6b271d329
Auto merge of #23873 - RestitutorOrbis:jn-add-tao, r=jdm
Add PerformanceResourceTiming:TimingAllowCheck

Added timing allow check to http_loader.rs in `fn http_network_fetch`.

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #21270

### Things to Do
- [x] Map header values from Timing-Allow-Origin to URL types using [Url::Parse](https://docs.rs/url/2.0.0/url/)
- [x] Check equality of those header URL origin with the origin in question
- [x] Just use url instead of `res.origin`
- [x] Change `.set_attribute(ResourceAttribute::RedirectStart(0))` to `.set_attribute(ResourceAttribute::RedirectStart(RedirectStartValue::Zero))`
- [x] Change `.set_attribute(ResourceAttribute::RedirectEnd(0))` to `.set_attribute(ResourceAttribute::RedirectEnd(RedirectEndValue::Zero))`
- [x] Figure out how to set DomainLookupStart, RequestStart, and ResponseStart without directly passing value as part of enum
- [x] Figure out how to handle lack of DomainLookupEnd (#21260) and SecureConnectionStart (#21268)
- [x] add a flag to ResourceFetchTiming that indicates if the timing check passed, and only update timing attributes if that flag is false
- [x] add function to mark timing test as failed and set all attributes to 0
- [x] resolve compile error regarding move of header_strings variable
- [x] resolve URL parse errors that appear during test execution
- [x] ~~Fix /resource-timing/crossorigin-sandwich-no-TAO.sub.html~~ (Refer to resource_TAO_cross_origin_redirect_chain.html)
- [x] ~~Fix /resource-timing/crossorigin-sandwich-TAO.sub.html~~ (Refer to resource_TAO_cross_origin_redirect_chain.html)
- [x] ~~Fix /resource-timing/resource-reload-TAO.sub.html~~ (Get TIMEOUT, fails on Firefox too?)
- [x] ~~Fix /resource-timing/resource_TAO_cross_origin_redirect_chain.html~~ (Problem seems to lie in loading the iFrame, when the request is made, the URL attached to the PerformanceResourceTiming interface is the initial URL set on the iFrame instead of the URL that is ultimately loaded)
- [x] ~~Fix resource-timing/resource_TAO_multi_wildcard.html~~ (Doesn't work because IMG element doesn't generate HTTP request with Origin field)
- [x] Fix /resource-timing/resource_TAO_match_origin.htm
- [x] Fix /resource-timing/resource_TAO_match_wildcard.htm
- [x] Fix /resource-timing/resource_TAO_multi.htm
- [x] Fix /resource-timing/resource_TAO_wildcard.htm
- [x] Fix /resource-timing/resource_TAO_zero.htm
- [x] Fix /resource-timing/resource_TAO_null.htm
- [x] Fix /resource-timing/resource_TAO_origin.htm (tests for responseStart and domainLookupEnd fail because #21260 and #21271 haven't been resolved)
- [x] Fix /resource-timing/resource_TAO_space.htm
- [x] Fix /resource-timing/resource_TAO_origin_uppercase.htm
- [x] ~~Fix /resource-timing/resource_timing_TAO_cross_origin_redirect.html~~ (Refer to resource_TAO_cross_origin_redirect_chain.html)
- [x] ~~Fix /resource-timing/TAO-case-insensitive-null-opaque-origin.sub.html~~ (TIMEOUT, doesn't seem to parse iFrame SRC correctly? There doesn't seem to be any sign that it makes a request to TAOResponse.py)
- [x] Fix /resource-timing/TAO-crossorigin-port.sub.html
- [x] ~~Fix /resource-timing/TAO-null-opaque-origin.sub.html~~ (Refer to /resource-timing/TAO-crossorigin-port.sub.html)
- [x] /navigation-timing/nav2_test_redirect_chain_xserver_partial_opt_in.html
- [x] /navigation-timing/nav2_test_document_open.html
- [x] /navigation-timing/nav2_test_frame_removed.html
- [x] /performance-timeline/not-clonable.html
- [x] /navigation-timing/nav2_test_redirect_xserver.html
- [x] /resource-timing/resource_connection_reuse.https.html
- [x] /resource-timing/resource_reparenting.html
- [x] /resource-timing/resource_connection_reuse.html
- [x] /resource-timing/resource_script_types.html
- [x] /resource-timing/idlharness.any.html
- [x] /resource-timing/clear_resource_timing_functionality.html
- [x] /resource-timing/idlharness.any.worker.html
- [x] /resource-timing/resource_cached.htm
- [x] /resource-timing/resource_connection_reuse_mixed_content_redirect.html
- [x] /resource-timing/resource_connection_reuse_mixed_content.html
- [x] /resource-timing/resource_timing_buffer_full_when_shrink_buffer_size.html
- [x] /navigation-timing/idlharness.window.html
- [x] /navigation-timing/nav2_test_navigate_iframe.html
- [x] /navigation-timing/nav2_test_navigate_within_document.html
- [x] /resource-timing/resource_reuse.sub.html
- [x] /navigation-timing/nav2_test_instance_accessible_from_the_start.html
- [x] /resource-timing/resource_dedicated_worker.html
- [x] /navigation-timing/unload-event-same-origin-check.html
- [x] /navigation-timing/nav2_test_navigation_type_backforward.html

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because ___

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23873)
<!-- Reviewable:end -->
2019-09-24 19:11:28 -04:00
bors-servo
5ab2d4ea83
Auto merge of #24217 - tdelacour:ISSUE-23995, r=jdm
ISSUE-23995: lazily generate UniqueIds for Nodes

<!-- Please describe your changes on the following line: -->
Updated `Node` so that its `unique_id` is only generated when `unique_id()` is called. This getter now also has assumed the responsibility for saving the `id` to the global hashset on `ScriptThread`.

Felt like I was fighting the borrow-checker a little bit on this one. Definitely a good learning experience for me, but the result strikes me as a little messy?

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #23995 (GitHub issue number if applicable)

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because ___

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24217)
<!-- Reviewable:end -->
2019-09-24 13:40:38 -04:00
bors-servo
b68e00069a
Auto merge of #24266 - imiklos:sparkle_update, r=jdm
Update sparkle crate

The following pull requests depend on it: #24250, #24178.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24266)
<!-- Reviewable:end -->
2019-09-24 12:08:28 -04:00
Thomas Delacour
d0c64d347d
ISSUE-23995: lazily generate unique_id for node 2019-09-24 09:25:09 -04:00
Anthony Ramine
768af85fdd Don't set PKG_CONFIG_PATH anymore
glib will find libffi on its own in its opt path now.
2019-09-24 14:21:27 +02:00
Fernando Jiménez Moreno
ea6cff4b8d Allow playing video/webm on Windows 2019-09-24 13:32:15 +02:00
Anthony Ramine
15e5bb7ec1 Remove obsolete macOS build instructions
openssl is already installed through the Brewfile, and libffi needs no
environment variable anymore now that glib was fixed.

https://github.com/Homebrew/homebrew-core/pull/44446
2019-09-24 12:04:39 +02:00
Paul Rouget
1a227eb097 webxr update 2019-09-24 10:31:16 +02:00
Paul Rouget
f08948053f offscreen_gl_context update 2019-09-24 10:31:16 +02:00
bors-servo
a7f76a3d09
Auto merge of #24255 - ferjm:gst.log.uwp, r=jdm
Hook up GST_DEBUG log to visual studio output

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #23700

<strike>Depends on https://github.com/servo/media/pull/312</strike>

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24255)
<!-- Reviewable:end -->
2019-09-24 03:02:36 -04:00
Javed Nissar
63adf66ea4 Fix test expectations 2019-09-23 23:37:08 -04:00
Javed Nissar
f5c2e13359 Expose stub attributes on PerformanceResourceTiming
The purpose of this commit is to expose stub attributes on
PerformanceResourceTiming in order to enable tests to pass as well as
set the type of performance timing entry to navigation when the
initiator is navigation. The purpose of this is to ensure that
document performance entries are correctly classified as navigation
entries rather than resource entries.
2019-09-23 22:52:12 -04:00
bors-servo
6ca62aa0de
Auto merge of #24242 - jdm:xr-webgllayer-format, r=asajeffrey,nox
Fix immersive mode panic on three.js rollercoaster on hololens

We have some special logic about texture formats when creating drawing buffers for WebGL that needs to be shared with the code that creates a separate framebuffer for immersive mode.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24083 and fix #20595.
- [x] These changes do not require tests because no CI for hololens; tested manually in the emulator.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24242)
<!-- Reviewable:end -->
2019-09-23 19:34:10 -04:00
bors-servo
ee17eedf3a
Auto merge of #24243 - servo:box-construct, r=SimonSapin
Uncomment more stuff related to box construction

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24243)
<!-- Reviewable:end -->
2019-09-23 17:00:25 -04:00
Anthony Ramine
053a3d5a5a Handle anonymous style in traverse_pseudo_element_contents 2019-09-23 20:32:16 +02:00
Anthony Ramine
0c156c60c2 Handle anonymous style in end_inline_formatting_context 2019-09-23 20:31:43 +02:00
Josh Matthews
ea715a7a4c webgl: Update framebuffer completion status when attached renderbuffer/texture storage changes. 2019-09-23 12:01:08 -04:00
Josh Matthews
555a60753c
Extend nightly WPT update timeout by an hour. 2019-09-23 11:19:43 -04:00
Fernando Jiménez Moreno
558dd8b32d Hook up GST_DEBUG log to visual studio output 2019-09-23 16:58:30 +02:00
Istvan Miklos
1c23e54774 Update sparkle crate
The following pull requests depend on it: #24250, #24178.
2019-09-23 16:08:39 +02:00
bors-servo
4fe8238b14
Auto merge of #24260 - paulrouget:miscUWP, r=jdm
Some small UWP improvements

- isolate the default url in its own file. As we keep tweaking it.
- allow code generation and local network connections
- cleaning the newly introduce AppPackages directory

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24260)
<!-- Reviewable:end -->
2019-09-21 11:11:38 -04:00
bors-servo
de89b09f68
Auto merge of #24253 - asajeffrey:glutin-new-window-shares-gl-bindings, r=paulrouget
Glutin new window shares gl bindings

<!-- Please describe your changes on the following line: -->

At the moment when the glutin port creates a new window which shares GL objects, it creates new GL bindings rather than sharting the existing ones. This PR fixes that.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because it's an efficiency improvement

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24253)
<!-- Reviewable:end -->
2019-09-21 04:22:24 -04:00
Paul Rouget
3e4cac3481 Cleanup AppPackages on mach clean 2019-09-21 09:45:50 +02:00
Paul Rouget
95a9287a8a Add more capabilities to UWP app 2019-09-21 09:45:50 +02:00
Paul Rouget
4490b2de9a Isolate default URL in its own file, for convenience 2019-09-21 09:45:49 +02:00
bors-servo
d3727c2989
Auto merge of #24252 - servo-wpt-sync:wpt_update_20-09-2019, r=servo-wpt-sync
Sync WPT with upstream (20-09-2019)

Automated downstream sync of changes from upstream as of 20-09-2019.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24252)
<!-- Reviewable:end -->
2019-09-20 17:33:01 -04:00
bors-servo
9c91984de1
Auto merge of #24249 - ferjm:exit.fullscreen, r=paulrouget
Go back to original window size after exiting fullscreen

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #24200

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24249)
<!-- Reviewable:end -->
2019-09-20 13:03:51 -04:00
bors-servo
b3c2bed84b
Auto merge of #24185 - jdm:uwp-native-build, r=asajeffrey
Fix many WACK errors

These changes ensure that all native dependencies are built with the compiler flags that will prevent forbidden API uses. They also incorporate a fork of rand_os that backports UWP support from more recent rand releases. This is necessary in the short term to avoid having to wait for the entire ecosystem to migrate to the most recent rand release.

Depends on https://github.com/servo/mozjs/pull/200 and https://github.com/servo/rust-mozjs/pull/471.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because no windows WACK tests

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24185)
<!-- Reviewable:end -->
2019-09-20 11:22:02 -04:00
Alan Jeffrey
99699ea70c Make the current window not current while creating a new shared window in the glutin port 2019-09-20 10:02:27 -05:00
Alan Jeffrey
5f503f034a Don't completely trust servo's tracking of the GL context in glutin 2019-09-20 10:01:50 -05:00
Alan Jeffrey
a7ed8f7e5a Add some debug! logs to the glutin port 2019-09-20 10:00:56 -05:00
Alan Jeffrey
8e95efb8b2 Share the GL bindings when creating a new glutin window which shares GL objects 2019-09-20 09:59:32 -05:00
WPT Sync Bot
d38b1c8241 Update web-platform-tests to revision 786fc058fd83cbf002be3a35100ab2a3b1f98d58 2019-09-20 14:30:34 +00:00
bors-servo
293ccd07e8
Auto merge of #24133 - paulrouget:userAction, r=jdm
Do not allow XR session on non user-activated events

This sets the thread in "user interaction mode" when the dispatched event is trusted. I also tried an approach where we would not rely on the dispatched event but just set "user interaction mode" when we get a compositor event (which, we can assume, are only user generated). That worked as well.

Fixes #23787.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24133)
<!-- Reviewable:end -->
2019-09-20 06:54:19 -04:00
Fernando Jiménez Moreno
1651b41935 Go back to original window size after exiting fullscreen 2019-09-20 11:28:54 +02:00
Paul Rouget
ea7b581537 Do not allow XR session on non user-activated events 2019-09-20 07:52:26 +02:00
Josh Matthews
5bd1e86d42 webxr: Use the same texture format as the original GL context's framebuffer when creating an XR GL layer. 2019-09-20 01:28:22 -04:00
Josh Matthews
778b48fa47 webgl: Implement component narrowing checks for CopyTexImage2D. 2019-09-20 01:28:22 -04:00
Josh Matthews
7e4cf13f5b webgl: Support RGB color attachments for complete framebuffers. 2019-09-20 01:28:22 -04:00
Josh Matthews
46b1d8faee webgl: Report invalid operations for more APIs that can't use an incomplete framebuffer. 2019-09-20 01:28:21 -04:00
bors-servo
748fa72320
Auto merge of #24238 - servo-wpt-sync:wpt_update_19-09-2019, r=servo-wpt-sync
Sync WPT with upstream (19-09-2019)

Automated downstream sync of changes from upstream as of 19-09-2019.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24238)
<!-- Reviewable:end -->
2019-09-19 21:24:48 -04:00