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

Support TESTNAME env var in makefiles #41

Closed
brson opened this issue Aug 10, 2012 · 7 comments
Closed

Support TESTNAME env var in makefiles #41

brson opened this issue Aug 10, 2012 · 7 comments
Labels
A-infrastructure A-testing E-less-complex Straightforward. Recommended for a new contributor.

Comments

@brson
Copy link
Contributor

brson commented Aug 10, 2012

Rust's makefiles can narrow down the tests run using TESTNAME, but servo doesn't support this. Requires editing makefiles of all the subprojects too.

@jdm
Copy link
Member

jdm commented Apr 18, 2014

http:https://mxr.mozilla.org/rust/source/mk/tests.mk#27 (if TESTNAME is defined, it's appended to the list of arguments to the test runner). The contenttest supports this but doesn't advertize it (see the filter code in contenttest.rs), but reftest.rs does not support it at the moment.

@jdm jdm added E-easy and removed E-less easy labels Apr 18, 2014
@emberian
Copy link
Contributor

Is this still relevant? It looks like any handling contenttest had is gone.

@jdm
Copy link
Member

jdm commented May 18, 2014

The contenttest harness support is still present: http:https://mxr.mozilla.org/servo/source/src/test/harness/contenttest/contenttest.rs#49

@emberian
Copy link
Contributor

But it seems that filter is never used, after it is initialized.

On Sat, May 17, 2014 at 8:54 PM, Josh Matthews [email protected]:

The contenttest harness support is still present:
http:https://mxr.mozilla.org/servo/source/src/test/harness/contenttest/contenttest.rs#49


Reply to this email directly or view it on GitHubhttps://github.com//issues/41#issuecomment-43430767
.

http:https://octayn.net/

@jdm
Copy link
Member

jdm commented May 18, 2014

It's placed in the TestOpts struct that's passed to run_tests_console. What more is necessary?

@emberian
Copy link
Contributor

Oh sorry, I missed that bit.

On Sat, May 17, 2014 at 10:24 PM, Josh Matthews [email protected]:

It's placed in the TestOpts struct that's passed to run_tests_console.
What more is necessary?


Reply to this email directly or view it on GitHubhttps://github.com//issues/41#issuecomment-43431841
.

http:https://octayn.net/

plaublin pushed a commit to plaublin/servo that referenced this issue Jun 21, 2014
SimonSapin added a commit that referenced this issue Jun 22, 2014
taking into account TESTNAME variable in reftest (see #41)
ChrisParis pushed a commit to ChrisParis/servo that referenced this issue Sep 7, 2014
Fix heading-obsolete-attributes-01.html
@jdm
Copy link
Member

jdm commented Nov 24, 2014

Filed #4091 about the rest of this.

@jdm jdm closed this as completed Nov 24, 2014
glennw pushed a commit to glennw/servo that referenced this issue Jan 16, 2017
pmocher pushed a commit to Brody-Eastwood/servo that referenced this issue Mar 30, 2018
# This is the 1st commit message:

Don't access the reflector when dropping a Promise (fixes servo#18651)

The reflector may be dead already.

# This is the commit message servo#2:

Run automated test for memory report charter.
# This is the commit message servo#3:

Run memory charting test on CI.
# This is the commit message servo#4:

Move the TravisCI test to the quick group.
# This is the commit message servo#5:

Add timeout pref to the mozilla/worklets wpt tests

# This is the commit message servo#6:

Added .ini for test_paint_worklet_timeout.html

# This is the commit message servo#7:

Update the in-tree status of WPT syncing.

# This is the commit message servo#8:

refactor(window): reference winit where applicable

- relates with servo#20299

# This is the commit message servo#9:

Update mozangle to 0.1.6.

# This is the commit message servo#10:

Update to handle WebRender API changes

Items now only take a clipping rectangle instead of a LocalClip.

# This is the commit message servo#11:

Update WR (local clip API change, texture cache optimizations).

# This is the commit message servo#12:

Update the MULTIPROCESS static when changing default options

# This is the commit message servo#13:

Add Windows support to the --nightly | -n flag.

# This is the commit message servo#14:

build(cargo): enable webrender capture feature

# This is the commit message servo#15:

feat(windowevent): expose CaptureWebRender event

# This is the commit message servo#16:

feat(window): bind hotkey to trigger capture event

# This is the commit message servo#17:

Avoid using WPT test runner to update the test manifest.

# This is the commit message servo#18:

Use typed coordinates.

We use Size2D and Point2D across compositing, constellation and script,
losing the type of pixels we use (DevicePixel, DeviceIndepententPixel
or CSSPixel) along the way, which might lead to bugs like
window.outerHeight not taking into account the page zoom (using
DeviceIndepententPixel instead of CSSPixel).

# This is the commit message servo#19:

alias some euclid types

# This is the commit message servo#20:

remove WindowMethods::size()

# This is the commit message servo#21:

Remove update-manifest argument that is no longer valid.
# This is the commit message servo#22:

Update web-platform-tests to revision e87f38097902e16348d4e17f4fe3bc2d0112bff1

# This is the commit message servo#23:

Add icon to servo.exe

# This is the commit message servo#24:

Use mozjs 0.3 fork without Heap::new

# This is the commit message servo#25:

Root JS object members in dictionaries

# This is the commit message servo#26:

Root `any` members in dictionaries

# This is the commit message servo#27:

Add key/value iterable HTML benchmark

# This is the commit message servo#28:

Fix tabs

# This is the commit message servo#29:

Use upstream mozjs 0.3

# This is the commit message servo#30:

Update WR (radial gradient optimizations).

# This is the commit message servo#31:

CounterBound::Integer made to store an Integer

# This is the commit message servo#32:

style: Remove unsound Atom From implementations.

Fixes servo#20158

# This is the commit message servo#33:

style: Cleanup @-moz-document parsing a bit.

MozReview-Commit-ID: 7vd0BLAqM0v
Bug: 1446470
Reviewed-by: xidorn

# This is the commit message servo#34:

style: Allow @-moz-document url-prefix() on content.

MozReview-Commit-ID: zaT41fpsDT
Bug: 1446470
Reviewed-by: xidorn

# This is the commit message servo#35:

style: Add another pref to control the url-prefix hack.

MozReview-Commit-ID: D4qL0oO69Uh
Bug: 1446470
Reviewed-by: xidorn

# This is the commit message servo#36:

style: Update bindings.

# This is the commit message servo#37:

Update web-platform-tests to revision 790e6601ee8b4b412b6ad9f6fde466b7ccb9cb7e

# This is the commit message servo#38:

style: Better Shadow DOM assertions.

Bug: 1445682
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D748

# This is the commit message servo#39:

Support memory report logs with interleaved non-report output, added automated tests

# This is the commit message servo#40:

Update WR revision.
# This is the commit message servo#41:

Add Servo_Property_IsShorthand to geckolib/glue.rs

# This is the commit message servo#42:

Re-expose webrender debugger feature in components/servo

Update ws in debugger  to 0.7.3

Update lockfile

# This is the commit message servo#43:

Update web-platform-tests to revision 3ec34e5a2c8cbeeb7fad521cce0daf923b272a92

# This is the commit message servo#44:

Make `type` argument as optional and ignore it in open method

# This is the commit message servo#45:

Update steps with new spec

# This is the commit message servo#46:

Make type-argument.window.js test as pass

# This is the commit message servo#47:

Simplify GetTexParameter

# This is the commit message servo#48:

Simplify VertexAttribOffset

# This is the commit message servo#49:

Simplify BufferParameter

# This is the commit message servo#50:

Simplify GetShaderPrecisionFormat

# This is the commit message servo#51:

Update web-platform-tests to revision 3a8328470d53c4501e31cec2775c4d33821c2275

# This is the commit message servo#52:

Mouse position from glutin is DevicePixel

# This is the commit message servo#53:

Update servo-websocket to 0.21

# This is the commit message servo#54:

Bump ipc-channel and bincode

This required bumping uuid too which unfortunately duplicated rand.

# This is the commit message servo#55:

Remove our dependency on the gcc crate

# This is the commit message servo#56:

Blobs support typed arrays now

# This is the commit message servo#57:

Bump parking_lot to 0.5

# This is the commit message servo#58:

initial shot at initial steps

# This is the commit message servo#59:

Second shot at initial steps

# This is the commit message servo#60:

Progress on initial steps

# This is the commit message servo#61:

initial shot at initial steps
jdm pushed a commit to jdm/servo that referenced this issue Mar 6, 2021
Take scripts as ~str to support non-ASCII string literals etc.
bors-servo added a commit that referenced this issue Oct 9, 2021
Fix UB in hashglobe

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

This is a backport of rust-lang/rust#53804

Currently, this bug cause Firefox crash with Rust 1.56 ( LLVM 13 )

<details>
<summary>backtrace of Firefox</summary>

```
(lldb) bt
* thread #1, name = 'GeckoMain', stop reason = signal SIGSEGV: invalid address (fault address: 0x0)
  * frame #0: 0x00007ffff4ff7bde libxul.so`::RustMozCrash(const char *, int, const char *) [inlined] MOZ_Crash(aLine=2220, aReason="attempt to write to unaligned or null pointer") at Assertions.h:256:3
    frame #1: 0x00007ffff4ff7bd4 libxul.so`::RustMozCrash(aFilename="/rustc/1.56.0/library/core/src/intrinsics.rs", aLine=2220, aReason="attempt to write to unaligned or null pointer") at wrappers.cpp:18:3
    frame #2: 0x00007ffff4ff7b53 libxul.so`mozglue_static::panic_hook::h91947f48d75eb4dd(info=<unavailable>) at lib.rs:91:9
    frame #3: 0x00007ffff4ff6e19 libxul.so`core::ops::function::Fn::call::h2f4e62c593234181((null)=<unavailable>, (null)=<unavailable>) at function.rs:70:5
    frame #4: 0x00007ffff5bd055b libxul.so`std::panicking::rust_panic_with_hook::h41696e81832261ff(payload=&mut dyn core::panic::BoxMeUp @ 0x00007f24a7e5fc70, message=Option<&core::fmt::Arguments> @ r13, location=<unavailable>) at panicking.rs:628:17
    frame #5: 0x00007ffff5bd00a2 libxul.so`std::panicking::begin_panic_handler::_$u7b$$u7b$closure$u7d$$u7d$::hea2a534982472bd3 at panicking.rs:519:13
    frame #6: 0x00007ffff5bcc494 libxul.so`std::sys_common::backtrace::__rust_end_short_backtrace::h793de5eec3283122(f=<unavailable>) at backtrace.rs:141:18
    frame #7: 0x00007ffff5bd0039 libxul.so`rust_begin_unwind(info=0x00007fffffff7a78) at panicking.rs:517:5
    frame #8: 0x00007ffff5c2ece1 libxul.so`core::panicking::panic_fmt::h43c4759d9f1ef313(fmt=<unavailable>) at panicking.rs:101:14
    frame #9: 0x00007ffff5c2ebbd libxul.so`core::panicking::panic::hb6dc0edf878703a5(expr=<unavailable>) at panicking.rs:50:5
    frame #10: 0x00007ffff56dd397 libxul.so`core::intrinsics::write_bytes::h481ad0b8372e9e0a(dst=0x0000000000000000, val='\0', count=0) at intrinsics.rs:2220:5
    frame #11: 0x00007ffff589e749 libxul.so`hashglobe::table::RawTable$LT$K$C$V$GT$::new::h04532bdf928a2865(capacity=0) at table.rs:839:13
    frame #12: 0x00007ffff58b38f0 libxul.so`hashglobe::hash_map::HashMap$LT$K$C$V$C$S$GT$::try_with_hasher::h7086fbc016a9427d(hash_builder=<unavailable>) at hash_map.rs:622:20
    frame #13: 0x00007ffff58b3077 libxul.so`hashglobe::hash_map::HashMap$LT$K$C$V$C$S$GT$::with_hasher::h9ee840b6d255f9fa(hash_builder=<unavailable>) at hash_map.rs:628:9
    frame #14: 0x00007ffff5812c99 libxul.so`_$LT$hashglobe..hash_map..HashMap$LT$K$C$V$C$S$GT$$u20$as$u20$core..default..Default$GT$::default::h7a34c6ba884b9658 at hash_map.rs:1329:9
    frame #15: 0x00007ffff58dfb3a libxul.so`_$LT$style..selector_map..MaybeCaseInsensitiveHashMap$LT$style..gecko_string_cache..Atom$C$V$GT$$u20$as$u20$core..default..Default$GT$::default::h2c19828653342158 at selector_map.rs:704:37
    frame #16: 0x00007ffff5978919 libxul.so`_$LT$style..invalidation..stylesheets..StylesheetInvalidationSet$u20$as$u20$core..default..Default$GT$::default::h16e0d0431f387b3d at stylesheets.rs:103:5
    frame #17: 0x00007ffff58d54b9 libxul.so`style::invalidation::stylesheets::StylesheetInvalidationSet::new::h4eedeb3b15c2c2c5 at stylesheets.rs:112:9
    frame #18: 0x00007ffff58e43a6 libxul.so`style::stylesheet_set::DocumentStylesheetSet$LT$S$GT$::new::hf80ba16d4d55a4ca at stylesheet_set.rs:516:28
    frame #19: 0x00007ffff58f269a libxul.so`style::stylist::StylistStylesheetSet::new::h66b5d09ea8a90d6e at stylist.rs:462:30
    frame #20: 0x00007ffff58f26f0 libxul.so`style::stylist::Stylist::new::h4732ca5247e85cd7(device=<unavailable>, quirks_mode=Quirks) at stylist.rs:562:26
    frame #21: 0x00007ffff593d755 libxul.so`style::gecko::data::PerDocumentStyleData::new::h9dc814d46fec8d6c(document=<unavailable>) at data.rs:145:22
    frame #22: 0x00007ffff56781d9 libxul.so`Servo_StyleSet_Init(doc=<unavailable>) at glue.rs:4175:25
    frame #23: 0x00007ffff2b58416 libxul.so`mozilla::ServoStyleSet::ServoStyleSet(this=0x00007fffe3c5ba90, aDocument=0x00007fffd391d560) at ServoStyleSet.cpp:120:17
    frame #24: 0x00007ffff128ba5e libxul.so`mozilla::dom::Document::Init() [inlined] mozilla::detail::UniqueSelector<mozilla::ServoStyleSet>::SingleObject mozilla::MakeUnique<mozilla::ServoStyleSet, mozilla::dom::Document&>(aArgs=0x00007fffd391d560) at UniquePtr.h:609:27
    frame #25: 0x00007ffff128ba46 libxul.so`mozilla::dom::Document::Init(this=0x00007fffd391d560) at Document.cpp:2657:15
    frame #26: 0x00007ffff20847d9 libxul.so`nsHTMLDocument::Init(this=0x00007fffd391d560) at nsHTMLDocument.cpp:146:27
    frame #27: 0x00007ffff208462a libxul.so`NS_NewHTMLDocument(aInstancePtrResult=0x00007fffffff9c60, aLoadedAsData=false) at nsHTMLDocument.cpp:112:22
    frame #28: 0x00007ffff2ea18cf libxul.so`nsContentDLF::CreateBlankDocument(aLoadGroup=0x00007fffc2ec87a0, aPrincipal=0x00007fffe476cdb0, aPartitionedPrincipal=0x00007fffe476cdb0, aContainer=0x00007fffe34752c0) at nsContentDLF.cpp:212:22
    frame #29: 0x00007ffff32d1ea1 libxul.so`nsDocShell::CreateAboutBlankContentViewer(this=0x00007fffe34752c0, aPrincipal=0x00007fffe476cdb0, aPartitionedPrincipal=0x00007fffe476cdb0, aCSP=0x0000000000000000, aBaseURI=0x0000000000000000, aIsInitialDocument=true, aCOEP=0x00007fffffff9d86, aTryToSaveOldPresentation=<unavailable>, aCheckPermitUnload=<unavailable>, aActor=0x0000000000000000) at nsDocShell.cpp:6588:16
    frame #30: 0x00007ffff332380c libxul.so`nsAppShellService::JustCreateTopWindow(this=<unavailable>, aParent=0x0000000000000000, aUrl=<unavailable>, aChromeMask=4161799686, aInitialWidth=<unavailable>, aInitialHeight=<unavailable>, aIsHiddenWindow=<unavailable>, aResult=<unavailable>) at nsAppShellService.cpp:760:22
    frame #31: 0x00007ffff3323b03 libxul.so`nsAppShellService::CreateTopLevelWindow(this=<unavailable>, aParent=0x0000000000000000, aUrl=<unavailable>, aChromeMask=4161799686, aInitialWidth=<unavailable>, aInitialHeight=<unavailable>, aResult=<unavailable>) at nsAppShellService.cpp:173:8
    frame #32: 0x00007ffff35aad11 libxul.so`nsAppStartup::CreateChromeWindow(this=<unavailable>, aParent=<unavailable>, aChromeFlags=4161799686, aOpenWindowInfo=0x0000000000000000, aCancel=<unavailable>, _retval=0x00007fffffff9ef8) at nsAppStartup.cpp:750:15
    frame #33: 0x00007ffff3627118 libxul.so`nsWindowWatcher::CreateChromeWindow(this=<unavailable>, aParentChrome=<unavailable>, aChromeFlags=<unavailable>, aOpenWindowInfo=<unavailable>, aResult=0x00007fffffff9fd0) at nsWindowWatcher.cpp:419:33
    frame #34: 0x00007ffff3626ae6 libxul.so`nsWindowWatcher::OpenWindowInternal(this=<unavailable>, aParent=0x0000000000000000, aUrl=0x00007fffffffa2d8, aName=0x00007fffffffa288, aFeatures=0x00007fffffffa278, aCalledFromJS=<unavailable>, aDialog=<unavailable>, aNavigate=<unavailable>, aArgv=<unavailable>, aIsPopupSpam=<unavailable>, aForceNoOpener=<unavailable>, aForceNoReferrer=<unavailable>, aPrintKind=<unavailable>, aLoadState=<unavailable>, aResult=<unavailable>) at nsWindowWatcher.cpp:947:12
    frame #35: 0x00007ffff3624d83 libxul.so`nsWindowWatcher::OpenWindow(this=0x00007fffe3f1bbe0, aParent=0x0000000000000000, aUrl=0x00007fffffffa2d8, aName=0x00007fffffffa288, aFeatures=0x00007fffffffa278, aArguments=<unavailable>, aResult=<unavailable>) at nsWindowWatcher.cpp:293:3
    frame #36: 0x00007ffff365c15b libxul.so`ShowProfileManager(aProfileSvc=<unavailable>, aNative=0x00007fffe8ce8ec0) at nsAppRunner.cpp:2553:27
    frame #37: 0x00007ffff365ad8f libxul.so`XREMain::XRE_mainStartup(bool*) [inlined] SelectProfile(aProfileSvc=<unavailable>, aNative=<unavailable>, aRootDir=<unavailable>, aLocalDir=<unavailable>, aProfile=<unavailable>, aWasDefaultSelection=<unavailable>) at nsAppRunner.cpp:0:7
    frame #38: 0x00007ffff365ab56 libxul.so`XREMain::XRE_mainStartup(this=<unavailable>, aExitFlag=<unavailable>) at nsAppRunner.cpp:4501:8
    frame #39: 0x00007ffff365fd00 libxul.so`XREMain::XRE_main(this=0x00007fffffffa500, argc=2, argv=0x00007fffffffb6f8, aConfig=0x00007fffffffa690) at nsAppRunner.cpp:5465:12
    frame #40: 0x00007ffff3660175 libxul.so`XRE_main(argc=<unavailable>, argv=<unavailable>, aConfig=<unavailable>) at nsAppRunner.cpp:5536:21
    frame #41: 0x00007ffff3665ff1 libxul.so`mozilla::BootstrapImpl::XRE_main(this=<unavailable>, argc=<unavailable>, argv=<unavailable>, aConfig=<unavailable>) at Bootstrap.cpp:45:12
    frame #42: 0x0000555555579140 firefox`main [inlined] do_main(argc=<unavailable>, argv=0x00007fffffffb6f8, envp=<unavailable>) at nsBrowserApp.cpp:225:22
    frame #43: 0x0000555555579076 firefox`main(argc=<unavailable>, argv=<unavailable>, envp=<unavailable>) at nsBrowserApp.cpp:392:16
```
</details>

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because ___
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-infrastructure A-testing E-less-complex Straightforward. Recommended for a new contributor.
Projects
None yet
Development

No branches or pull requests

3 participants