eliminate nsFileSpec and nsIFileSpec

RESOLVED INCOMPLETE

Status

()

defect
P1
normal
RESOLVED INCOMPLETE
20 years ago
5 years ago

People

(Reporter: warrensomebody, Unassigned)

Tracking

({arch, helpwanted})

Trunk
Future
All
Other
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

()

Attachments

(2 attachments)

Now that we have nsIFile, we should eliminate all the old nsFileSpec stuff:

http://lxr.mozilla.org/seamonkey/ident?i=nsFileSpec

A lot of this is changing:

  nsFileSpec fs(path);

to:

  nsCOMPtr<nsILocalFile> fs;
  rv = NS_NewLocalFile(path, getter_AddRefs(fs));

and changing the parameter types from nsFileSpec& to nsIFile*. 

Also, we should change the functions in xpcom/io/nsIFileStream.h (e.g. 
NS_NewTypicalInputFileStream) to the new functions in 
netwerk/base/public/nsIFileStreams.idl (e.g. NS_NewLocalFileInputStream).

Help on this one greatly appreciated.
Keywords: helpwanted
QA Contact: leger → kandrot
this is an interesting bug.
Depends on: 46394
Depends on: 78013
I'll take this bug as part of the nsIFIle stuff i'm doing.
I am also working on getting rid of uconv from io.
FileSpec is dependent on uconv nsIFIle is not now. 

Assign this bug to me. 

thanks

--pete
Assignee: nobody → petejc
accepting bug
Status: NEW → ASSIGNED
Target Milestone: --- → mozilla0.9.7
Priority: P3 → P1
pushing back. 
Target Milestone: mozilla0.9.7 → mozilla0.9.8
Ok, nsFileSpec is used massively all over the place . . .

So this will need to be done in safe step by step stages. 

First thing i will do is comment all of the API clones that are in nsIFileSpec
and change over all of the accessors to use nsIFile.

--pete 
Target Milestone: mozilla0.9.8 → mozilla0.9.9
I think we will have to future this for now . . .

--pete
Target Milestone: mozilla0.9.9 → Future
Blocks: 214700
Depends on: 214792
Depends on: 214793
Depends on: 214795
Depends on: 214796
Depends on: 214797
Attachment #129044 - Flags: superreview?(bryner)
Attachment #129044 - Flags: review?(dougt)
Comment on attachment 129044 [details] [diff] [review]
remove unnecessary xpcom_obsolete references (checked in)

great!
Attachment #129044 - Flags: review?(dougt) → review+
Comment on attachment 129044 [details] [diff] [review]
remove unnecessary xpcom_obsolete references (checked in)

Assuming it all builds, sr=me.
Attachment #129044 - Flags: superreview?(bryner) → superreview+
Attachment #129044 - Attachment description: remove unnecessary xpcom_obsolete references → remove unnecessary xpcom_obsolete references (checked in)
Depends on: 214889
No longer blocks: 214700
adding a few more bugs
Depends on: 58039, 71535, 131289
two more !
Depends on: 132180, 191810
Depends on: 33451
sorry for bug spam. bug 131289 was added by mistake.
No longer depends on: 131289
Blocks: 282808
QA Contact: kandrot → nobody
Assignee: pete → nobody
Status: ASSIGNED → NEW
QA Contact: nobody → xpcom
Depends on: 389807
Shouldn't nsIFileSpec (note the "I") be removed as well?
http://mxr.mozilla.org/seamonkey/source/xpcom/obsolete/nsIFileSpec.idl#39
It's still used in libpref, see bug 214796.
Summary: eliminate nsFileSpec → eliminate nsFileSpec and nsIFileSpec
Depends on: 459693
No longer depends on: 33451
AFAIK xpcom/obsolete is only used by mailnews and is in the process of being removed. We certainly don't build it as part of XULRunner/Firefox any more. I don't think this bug is worth tracking independently.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → INCOMPLETE
Depends on: 530352
xpcom/obsolete has been removed by bug 514131 on mozilla-central (Gecko 1.9.3a1pre).
Blocks: 514131
You need to log in before you can comment on or make changes to this bug.