Commit Graph

128 Commits

Author SHA1 Message Date
Josh Matthews
ee7d78d6bb servo: Merge #5005 - Implement MIME sniffing (from jdm:mime-sniffing); r=jdm
This rebases and integrates #4209, removing the sniffer task (turns out it wasn't a great idea), and adds a `--sniff-mime-types` command line flag to enable sniffing for file:// and http:// resources. Tested against a random picture file on my harddrive. The actual MIME sniffing implementation can be extracted into a separate library separately.

Source-Repo: https://github.com/servo/servo
Source-Revision: c7e210f24c97be1057a652b3644332e7043bfeac
2015-04-07 12:48:06 -05:00
Manish Goregaokar
2674bab6a8 servo: Merge #5465 - Split out shared networking code into net_traits crate (from gilles-leblanc:issue-4476-b); r=jdm
Fixes #4476

Source-Repo: https://github.com/servo/servo
Source-Revision: d707d1b78e3393a1ed164af8ec855bd0ff119e55
2015-04-03 13:00:46 -06:00
Matt McCoy
80951f486a servo: Merge #5299 - Add HTTP compression (from mattnenterprise:http_compression); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: dbd16932e67c63a778362f71be028132279d5e91
2015-04-01 22:15:37 -06:00
snf
d4790a06ea servo: Merge #5419 - Send storage event (from snf:send_storage_event); r=jdm
Addresses #5196

Source-Repo: https://github.com/servo/servo
Source-Revision: c0c54875a282fd6d03daba71e6e764763be70e09
2015-03-31 15:51:52 -06:00
Adenilson Cavalcanti
e18e43f938 servo: Merge #5366 - Load a placeholder when a url to an image is broken (from Adenilson:loadPlaceholder01); r=jdm
I decided to use the old Netscape broken image link icon (later we may
replace the image asset for something more trendier).

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e282d55d7e36f0e488a395b90e961e9200c3817
2015-03-30 12:40:12 -06:00
Corey Farwell
2dab12175f servo: Merge #5403 - Improve and fix default_path cookie algorithm (from frewsxcv:cookie-default-path); r=jdm
* Previously, the function returned an owned String, which is not
  necessary, so now it returns a slice
* Steps have now been documented/labeled
* The last step of the algorithm was incorrect; it would only slice the
  path if the "/" was the last character, which is not what the spec
  says. The spec says to slice up until (but not including) the last
  "/". Also added a regression test for this.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d00e37c23dce23cad5b98f82ae711675f324810
2015-03-30 08:52:06 -06:00
Ms2ger
27344015a4 servo: Merge #5388 - Stop using old_io in net tests (from Ms2ger:net-tests); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ac786e29678ceba8c66bcaa0f2096e4cca2a2372
2015-03-26 11:33:55 -06:00
Ms2ger
49789f9058 servo: Merge #5381 - Stop using old_path (from Ms2ger:old_path); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fefdd9afbaa661b1282babc27e3e5ca7c9ea669d
2015-03-26 09:36:56 -06:00
Nicholas Nethercote
511ce78c9b servo: Merge #5348 - Rename lots of profiling-related things (from nnethercote:profiler-renaming); r=jdm
```
------------------------------------------------------------------------
BEFORE                              AFTER
------------------------------------------------------------------------
util::memory                        util::mem
- heap_size_of                      - heap_size_of (unchanged)
- SizeOf                            - HeapSizeOf
  - size_of_excluding_self            - heap_size_of_children

prof::mem                           prof::mem
- MemoryProfilerChan                - ProfilerChan
- MemoryReport                      - Report
- MemoryReportsChan                 - ReportsChan
- MemoryReporter                    - Reporter
- MemoryProfilerMsg                 - ProfilerMsg
  - {R,UnR}egisterMemoryReporter      - {R,UnR}egisterReporter
- MemoryProfiler                    - Prof
- ReportsForest                     - ReportsForest (unchanged)
- ReportsTree                       - ReportsTree   (unchanged)
- SystemMemoryReporter              - SystemReporter

prof::time                          prof::time
- TimeProfilerChan                  - ProfilerChan
- TimerMetadata                     - TimerMetadata (unchanged)
- Formatable                        - Formattable [spelling!]
- TimeProfilerMsg                   - ProfilerMsg
- TimeProfilerCategory              - ProfilerCategory
- TimeProfilerBuckets               - ProfilerBuckets
- TimeProfiler                      - Profiler
- TimerMetadataFrameType            - TimerMetadataFrameType (unchanged)
- TimerMetadataReflowType           - TimerMetadataReflowType (unchanged)
- ProfilerMetadata                  - ProfilerMetadata (unchanged)
```
In a few places both prof::time and prof::mem are used, and so
module-qualification is needed to avoid overlap, e.g. time::Profiler and
mem::Profiler. Likewise with std::mem and prof::mem. This is not a big
deal.

Source-Repo: https://github.com/servo/servo
Source-Revision: d784d9c488be4533a3590a154addd366d15a5864
2015-03-25 21:18:48 -06:00
Nicholas Nethercote
dab428b57b servo: Merge #5335 - Move profiler code from util into a new crate profile (from nnethercote:profile-crate); r=glennw
- Most of util::memory has been moved into profile::mem, though the
  `SizeOf` trait and related things remain in util::memory. The
  `SystemMemoryReporter` code is now in a submodule
  profile::mem::system_reporter.

- util::time has been moved entirely into profile::time.

Source-Repo: https://github.com/servo/servo
Source-Revision: d1268ec9c6633684270015e7b2619181aeb47b8b
2015-03-24 03:15:49 -06:00
Avi Weinstock
5f5564e0e6 servo: Merge #5328 - Fixed some deprecation errors in components/net (from aweinstock314:master); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: be68ea0d81718415cf78e45edbe46800a49697c9
2015-03-23 20:36:47 -06:00
Corey Farwell
28a0660573 servo: Merge #5312 - Cleanup 'view-source:' conditional (from frewsxcv:cleanup-view-source); r=jdm
Fixes #5304

Source-Repo: https://github.com/servo/servo
Source-Revision: 0c3615ced1c4b648e63ad8c33ea0885c45ce3fb1
2015-03-23 15:42:48 -06:00
Ms2ger
0e9f5150d2 servo: Merge #5324 - Remove allow(missing_copy_implementations) attributes (from Ms2ger:missing_copy_implementations); r=jdm
This is now the default.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1a35f549baad871a3691ae485af2efecd2d73f7
2015-03-23 08:45:50 -06:00
Ms2ger
761d1d93b7 servo: Merge #5303 - Update some code that's feature-gated under core (from Ms2ger:core); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 43f3f6c897916aea75773f74060ec84a338834d0
2015-03-21 12:57:46 -06:00
Ms2ger
e3e15283b7 servo: Merge #5297 - Replace most usage of std::old_io::File (from Ms2ger:fs); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: ec60f29203c75b46d59253c7cbb4005fce7e4ad4
2015-03-20 17:00:44 -06:00
Ms2ger
20710ee541 servo: Merge #5293 - Cleanup resource_task's global_init() (from Ms2ger:global_init); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4eb26065acdc37d275e658d8581282cb39b90686
2015-03-20 15:00:49 -06:00
Simon Sapin
5cb6c4ea43 servo: Merge #5262 - Fix some post-rustup warnings (from servo:fix-warnings); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: 124a78fb2e4d324a7d0ed54da1cca17839d406b7
2015-03-18 15:21:49 -06:00
Ms2ger
f4ea3a3dd0 servo: Merge #5256 - Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-de (from servo:rustup_20150311); r=jdm
...v.

Relies on:
* https://github.com/servo/rust-geom/pull/72
* https://github.com/servo/rust-glx/pull/10
* https://github.com/servo/gleam/pull/15
* https://github.com/servo/rust-mozjs/pull/137
* https://github.com/servo/rust-core-text/pull/35
* https://github.com/servo/rust-io-surface/pull/28

Source-Repo: https://github.com/servo/servo
Source-Revision: 99cf9dbfc107bacb84dfe5afa9539a0ede3beac2
2015-03-18 11:25:00 -06:00
Chris Double
86ba64c942 servo: Merge #5219 - view-source protocol and text/plain handling (from doublec:view_source_protocol_and_plain_text); r=jdm
Implements view-source protocol by having a view-source handler, and modifying the content type to be text/plain if that is used.

Implements text/plain handling. This allows view-source content to display as plain text.

Example usage:

    ./mach run http://cd.pn/x.txt
    ./mach run view-source:http://tinyvid.tv/

This fixes issue #4181. Issue #3649 includes "support text/plain" so this possibly fixes some of that issue as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7bd6cb00911572e8733e462156122d974ff0c8a8
2015-03-17 07:18:51 -06:00
Zack Slayton
0635a7d127 servo: Merge #5217 - localStorage shim, fixes #5195 (from zslayton:master); r=jdm
@jdm This initial version has a few outstanding issues that I wanted to invite input on. Specifically:

1. I had some difficulty finding a home for the `StorageType` enum. Structs defined outside of the `script` module don't seem to be able to use the `#[jstraceable]` annotation and the `net` module (where `StorageTask` lives) doesn't have access to `script`. Per Simon Sapin's suggestion, I worked around this temporarily by creating a `TraceableStorageType` stand-in struct that was traceable and which could be translated into a regular `StorageType` when being sent to the `StorageTask`. Unsure of the best way to resolve this hack. Thoughts?

2. Apart from the `Storage` constructor used in `Window::SessionStorage` and the new `Window::LocalStorage`, there's also a method called `Storage::Constructor`. I'm unclear on what (if anything) will actually invoke this, so I'm not sure which variant of `StorageType` to use here. I've temporarily created an `Unknown` variant of `StorageType` as a placeholder.

3. I discovered that the web platform tests directory's localStorage tests. Many of them now pass despite the configured expectation that they fail. However, several do not pass. Is there a good way for me to add debug logging or otherwise get a sense of which assertion failed / what went wrong?

Thanks for your continued help!

Source-Repo: https://github.com/servo/servo
Source-Revision: b8e87ea020879090c931421cf3cec73d8cd1156f
2015-03-16 14:48:51 -06:00
Manish Goregaokar
f3ee9764a0 servo: Merge #5212 - Add --no-ssl flag for bypassing SSL checking (from Manishearth:ssl-off); r=larsbergstrom
SSL is broken-ish (eg tw.yahoo.com, html.spec.whatwg.org don't work since we don't verify SAN properly), this flag can let devs bypass the protection for testing purposes.

Source-Repo: https://github.com/servo/servo
Source-Revision: 389338c28f75808e68cd635211687718362f8e7d
2015-03-14 08:39:48 -06:00
hirschenberger
1602bf73a6 servo: Merge #5194 - Fix #5176 by premultiplying the alpha channel to the color channels (from hirschenberger:gif_alpha_background); r=larsbergstrom
This is GIF specific. It's also done when the image is PNG but PNG is
handled separately with the PNG crate, whereas GIFs are handled by the
stb-image crate and the distinction between alpha and non-alpha-supporting
images was missing.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6593cf9ec498160c2b5bc096cc7ec3ff3a7479ee
2015-03-12 05:51:48 -06:00
Gilles Leblanc
8ae6649e9f servo: Merge #5105 - Add more robust hostsfile parsing (from gilles-leblanc:issue-5063); r=jdm
Adds hostsfile parsing support for:
* Tabs
* Comments (line and end of line)
* IPv4 address validation
* Basic IPv6 address validation
* End of line whitespaces
* Host name alias (multiple host names per address)

Fixes #5063

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a73766db2442476190f3dcec321f452aa122055
2015-03-05 20:03:55 -07:00
Ankit Agrawal
71d1e7f92b servo: Merge #5102 - Add profiling to image decoding (from servo:profile-img); r=jdm
This extracts some independently useful parts of
<https://github.com/servo/servo/pull/4215>.

Source-Repo: https://github.com/servo/servo
Source-Revision: 16bc4749af685c7a1728858c15ead011ab415615
2015-02-28 11:46:02 -07:00
Edit Balint
652d187f26 servo: Merge #5020 - Implement Canvas pixel manipulation (from jdm:canvas); r=jdm
Rebase of #4639.

Source-Repo: https://github.com/servo/servo
Source-Revision: 287f390c4a56dd8c5960df699d45653227b25d6f
2015-02-22 11:48:46 -07:00
Manish Goregaokar
ec73aa2e35 servo: Merge #4991 - Add ./mach build-gonk; unbreak gonk build; document (from Manishearth:gonkup); r=larsbergstrom
r? @larsbergstrom

cc @mwu

Source-Repo: https://github.com/servo/servo
Source-Revision: d326e75c5e0314903ed2d297dcb72e535c543c2f
2015-02-20 22:27:49 -07:00
Ms2ger
03f803ab84 servo: Merge #4947 - Use rustc-serialize rather than the built-in deprecated serialize (from Ms2ger:serialize); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: afb152a8569953f730df564be2745c5a6302bf6f
2015-02-17 07:30:50 -07:00
Ms2ger
02ab4f60c3 servo: Merge #4922 - Fix some warnings (from servo:warnings); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 66f4faf44fbc6e8703d4336219a20dd3b19fb493
2015-02-13 05:33:49 -07:00
Simon Sapin
8fbd363d52 servo: Merge #4893 - Upgrade to rustc ba2f13ef0 2015-02-04 (from servo:rustup_2015-01-31); r=Ms2ger,glennw
Ready for review.

Final link step on android fails, but we know how to fix it and will add it to this branch soon.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2cc08f289ab909de44fa09a07b2c43b70ce379b9
2015-02-11 17:24:45 -07:00
Ms2ger
a674439440 servo: Merge #4889 - Use base64 from rustc-serialize (fixes #4747) (from Ms2ger:4747-base64); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 58b7186cea7a61645b38158053e3849d121fa487
2015-02-10 07:24:45 -07:00
Josh Matthews
6b82a6f27f servo: Merge #4881 - Allow unused variables, imports, and mutable (from jdm:allowunused); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 7048291dc0db4efecf9c13779feeb5e022210123
2015-02-09 16:45:47 -07:00
Shing Lyu
5f0a88a1be servo: Merge #4702 - Bug #3219 - Assign hostfile using the HOST_FILE environment variable (from shinglyu:bug3219); r=jdm
This is a fix for bug #3219 . This patch allows the user to specify a disposiable hostfile using the `HOST_FILE` environment variable. Therefore, we can run tests on test servers without actually changing the system hostfile.

Source-Repo: https://github.com/servo/servo
Source-Revision: 237cdee9e462bc7b070d9fe1a7722ad961ff25c2
2015-02-05 20:30:45 -07:00
Josh Matthews
66c8eb4c1e servo: Merge #4519 - Cookie support (from jdm:cookies); r=Ms2ger
As specified in http://tools.ietf.org/html/rfc6265. Requires https://github.com/servo/cookie-rs/pull/1. Tested against http://www.joshmatthews.net/cookie.php, http://www.html-kit.com/tools/cookietester/, https://github.com/login, and https://mobile.twitter.com/session/new .

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e3f504d94ffb77ec6148166d2ab73978e1c71c8
2015-02-04 11:57:54 -07:00
Alexandru Cojocaru
0cbc5adfcf servo: Merge #4820 - add unwrap to send/recv calls (from servo:send-recv); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 8e6dcc7c26d88bb0452226ff8c34539e368e03d9
2015-02-03 11:24:53 -07:00
Manish Goregaokar
aa0d43f4ed servo: Merge #4741 - Basic certificate verification (from Manishearth:cert-checking); r=jdm
For now, this can only be tested by replacing `resources/certs` with `resources/cert-google-only` (an Equifax certificate -- will work for Google but not Wikipedia or Stack Exchange)

I can replace the error page with something less frivolous, but since we already have the "I tried" star (and this stuff is the job of the chrome anyway), I thought this would be more fun to have.


This also contains a partial hyper upgrade.

Fixes #4119

Source-Repo: https://github.com/servo/servo
Source-Revision: 2010fbf0ddabdaf3bcb52c5f2075e7d994fc63ec
2015-01-31 03:42:48 -07:00
Josh Matthews
18f857e07a servo: Merge #4788 - Lock crates.io dependencies to specific versions (from jdm:cargodeps); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 66384dfcfd4c38595985cd3fac12fa616a2ba94f
2015-01-30 17:36:50 -07:00
Ms2ger
155838196e servo: Merge #4766 - Import the util crate as util rather than servo_util (from Ms2ger:util); r=Manishearth
This used to conflict with the util crate from the standard library, which
has long since been removed.

The import in layout has not been changed because of a conflict with the
util mod there.

Source-Repo: https://github.com/servo/servo
Source-Revision: 27e0f16407629422b5e047e067d458142372c97e
2015-01-29 05:12:49 -07:00
Manish Goregaokar
f43b3f0b84 servo: Merge #4739 - Fix some warnings (from Manishearth:warning-patrol); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d373f8dc26239310dec8d2fd66ed72385548cf6f
2015-01-28 02:27:50 -07:00
Josh Matthews
b11f7d94dc servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3f9012864a2cd927cf17a8e11dfa6922add1b7df
2015-01-27 18:15:50 -07:00
Ms2ger
0b22e8f634 servo: Merge #4703 - Pass a String to spawn_named (from servo:task); r=saneyuki
IntoString has been removed from Rust, and named() will take a String, so
there is no good reason to do otherwise here.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8df0ee2bb5d40e4b22db1666982e2e5ea36513f6
2015-01-21 03:48:49 -07:00
Ms2ger
dfc91abf3f servo: Merge #4682 - Move to to_owned rather than into_string (from servo:to_owned); r=jdm
into_string has been removed from Rust.

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ebc7c32d5ce58ada3f9d8ffdb60cc025eb5997
2015-01-20 07:54:46 -07:00
Matthew Rasmus
8a04144529 servo: Merge #4575 - Post-rustup warning fixes (from mttr:warnings); r=jdm
Notes:

* This adds `#![allow(missing_copy_implementations)]` to components/*/lib.rs. I'm not sure how to approach the missing Copy warnings (are there things for which Copy should NOT be implemented, and how can I tell?) so I stuck this in to make life easier when looking through the warnings. I can easily remove this if necessary.
* This leaves the following type of warnings, which I couldn't figure out how to approach (I'll investigate it later if no one else wants to).
```
css/matching.rs:72:23: 72:35 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:72         this_as_query.equiv(other)
                                         ^~~~~~~~~~~~
css/matching.rs:95:10: 95:49 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:95 impl<'a> Equiv<ApplicableDeclarationsCacheEntry> for ApplicableDeclarationsCacheQuery<'a> {
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 0793137631cbe4ebbff8fb85639206ce8e41bbb7
2015-01-08 16:03:55 -07:00
Ms2ger
b3c7f9d2ca servo: Merge #4554 - Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19 (from servo:rustup_20141221); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7148c79f9124779a910fd5291c5fa0543b2dae
2015-01-08 08:00:57 -07:00
Ms2ger
2979891740 servo: Merge #4542 - Prepare for the rust upgrade (from servo:pre-rustup_20141221); r=saneyuki
In particular, this contains changes to qualify enums where rust will require it, and to stop using some features that will be removed.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba8cf6b0e6145265f9472d4855f078d8b5943fe7
2015-01-04 12:39:47 -07:00
Ms2ger
03365eb590 servo: Merge #4535 - Stop using some obsolete features (from servo:pre-rustup_20141221); r=jdm
This prepares for the rust upgrade currently being conducted.

Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
2015-01-03 14:39:46 -07:00
Tetsuharu OHZEKI
f3cdf29efa servo: Merge #4423 - net: Remove glob imports added in #4405 (from saneyuki:glob_net); r=jdm
#4406

Source-Repo: https://github.com/servo/servo
Source-Revision: 4ccecd8dca406a4f0d62ac50f461b09816786ec5
2014-12-18 13:21:55 -07:00
Glenn Watson
636d338cf6 servo: Merge #4405 - Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d (from servo:rustup_20141124); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fbf42c951b2f53d91e2f32f8035484a07ea83493
2014-12-17 18:45:49 -07:00
Patrick Walton
a25bac63a9 servo: Merge #3844 - script: Improve dirty propagation and fix script-layout synchronization (from pcwalton:script-layout-synchronization); r=jdm
This fixes race conditions whereby layout and script could be running
simultaneously.

r? @jdm
cc @cgaebel

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f2684d2f81046abd7548fb22d996d1e506a104a
2014-12-15 15:31:21 -07:00
Joseph Crail
6c02d6ca77 servo: Merge #4171 - Fix spelling mistakes in comments (from jbcrail:fix-spelling); r=jdm
I only updated comments, not strings.

Source-Repo: https://github.com/servo/servo
Source-Revision: f451005f4fe075c849de2f3766f5bf84510b8465
2014-12-12 02:12:51 -07:00
Manish Goregaokar
08f0462c06 servo: Merge #4198 - Hyper+OpenSSL on Android (from Manishearth:hyper-droid); r=Manishearth
This is the Hyper pull request, plus the set up for OpenSSL on Android to make it merge.

Sean's commits have been reviewed in #4065 (My Android changes were reviewed by Glenn)

Source-Repo: https://github.com/servo/servo
Source-Revision: 6bd9bf979bcfa96ea14e666b59eab01a6d6c373e
2014-12-05 04:16:11 -07:00