From akuchlin@mems-exchange.org Fri Jan 3 16:01:44 2003 From: akuchlin@mems-exchange.org (Andrew Kuchling) Date: Fri, 03 Jan 2003 11:01:44 -0500 Subject: [Catalog-sig] PEP 301 implementation checked in Message-ID: <E18UUGW-0005c7-00@ute.mems-exchange.org> I've checked in Richard Jones's patches, so those of you who follow the Python CVS trunk can now play with the PEP 301 implementation. Changes: * The DistributionMetadata object and the setup() function now support 'classifiers' as a keyword. * The 'register' distutil command has been added to upload a package's metadata to the PyPI server. The registry is still running on my web server at amk.ca, a bandwidth-limited DSL line, but it'll be moved to something at python.org before too long. (Certainly before 2.3final ships!) Please bang on the distutils code in any way you can think of, filing bug reports and offering comments, so we can be sure that it's solid. You can comment on the web site, too, but the site can be updated independently of the Python code so there's less pressure to get it finished before 2.3final. Here's an example of how the new code works. A setup.py file can now contain a 'classifiers' argument listing Trove-style classifiers: setup (name = "Quixote", version = "0.5.1", description = "A highly Pythonic Web application framework", ... classifiers= ['Topic :: Internet :: WWW/HTTP :: Dynamic Content', 'Environment :: No Input/Output (Daemon)', 'Intended Audience :: Developers'], ... ) I can then run 'python setup.py register' to upload an entry to the package index, which is browseable at http://www.amk.ca/cgi-bin/pypi.cgi . ('register --list-classifiers' will output a list of legal classifiers.) See PEP 301 for more details. --amk (www.amk.ca) OLIVIA: Why, this is very midsummer madness. -- _Twelfth Night_, III, iv From neal@metaslash.com Fri Jan 3 23:32:39 2003 From: neal@metaslash.com (Neal Norwitz) Date: Fri, 3 Jan 2003 18:32:39 -0500 Subject: [Catalog-sig] initial use of PyPI Message-ID: <20030103233239.GK29873@epoch.metaslash.com> Here's some notes on my first use of the catalog. Overall I thought it was pretty good. Easy to use (bugs notwithstanding :-) Most of the bugs seem like they should be easy to fix. * When I logout of the web page, user/password is requested again. * When doing admin, the user names should be sorted in some way. * Should a user be allowed to be both an owner and maintainer? (I don't know the distinction, so it could make sense.) * Platform is unknown, how does one set it? What are the possible values? * If you remove a role for a user which doesn't have the role, you get a successful 'Role Removed OK' (You asked to try to break it, right? :-) Good. Because: * I was the owner (neal) for PyChecker. I removed myself as the owner, which meant there was no owner. I clicked admin, which sent me into an infinite loop of requesting login. Edit behaved better, I got an error message. So now I can't do anything more to test PyChecker. Could someone restore me as owner or delete the package? * I went to update my user information. I pressed ok without entering a password and I couldn't log in again. The password wasn't the old password or blank. At least I couldn't use either to login. * After changing my user information, I had to re-login. Neal From neal@metaslash.com Fri Jan 3 23:36:14 2003 From: neal@metaslash.com (Neal Norwitz) Date: Fri, 3 Jan 2003 18:36:14 -0500 Subject: [Catalog-sig] one other issue w/registering on PyPI Message-ID: <20030103233614.GL29873@epoch.metaslash.com> I forgot to mention when registering a bunch of html was printed. I'm not sure if this is for debugging and will be removed, intentional, or should be removed. It seems everything between ---------- can be suppressed (unless -v is specified?). Neal From rjones@ekit-inc.com Fri Jan 3 23:41:21 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Sat, 4 Jan 2003 10:41:21 +1100 Subject: [Catalog-sig] one other issue w/registering on PyPI In-Reply-To: <20030103233614.GL29873@epoch.metaslash.com> References: <20030103233614.GL29873@epoch.metaslash.com> Message-ID: <200301041041.21412.rjones@ekit-inc.com> On Sat, 4 Jan 2003 10:36 am, Neal Norwitz wrote: > I forgot to mention when registering a bunch of html was printed. I'm > not sure if this is for debugging and will be removed, intentional, or > should be removed. It seems everything between ---------- can be > suppressed (unless -v is specified?). It should be - the verbose output is enabled by a --verbose flag. Or at least that's what _should_ happen. Which version of register.py are you using (the CVS version from the top please). Richard From neal@metaslash.com Sat Jan 4 00:02:27 2003 From: neal@metaslash.com (Neal Norwitz) Date: Fri, 3 Jan 2003 19:02:27 -0500 Subject: [Catalog-sig] one other issue w/registering on PyPI In-Reply-To: <200301041041.21412.rjones@ekit-inc.com> References: <20030103233614.GL29873@epoch.metaslash.com> <200301041041.21412.rjones@ekit-inc.com> Message-ID: <20030104000227.GM29873@epoch.metaslash.com> On Sat, Jan 04, 2003 at 10:41:21AM +1100, Richard Jones wrote: > On Sat, 4 Jan 2003 10:36 am, Neal Norwitz wrote: > > I forgot to mention when registering a bunch of html was printed. I'm > > not sure if this is for debugging and will be removed, intentional, or > > should be removed. It seems everything between ---------- can be > > suppressed (unless -v is specified?). > > It should be - the verbose output is enabled by a --verbose flag. Or at least > that's what _should_ happen. Which version of register.py are you using (the > CVS version from the top please). I used the version in CVS. If I do setup.py -q register, I don't get the html. Neal From rjones@ekit-inc.com Sat Jan 4 01:02:16 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Sat, 4 Jan 2003 12:02:16 +1100 Subject: [Catalog-sig] initial use of PyPI In-Reply-To: <20030103233239.GK29873@epoch.metaslash.com> References: <20030103233239.GK29873@epoch.metaslash.com> Message-ID: <200301041202.16548.rjones@ekit-inc.com> On Sat, 4 Jan 2003 10:32 am, Neal Norwitz wrote: > Here's some notes on my first use of the catalog. Overall I thought it > was pretty good. Easy to use (bugs notwithstanding :-) Most of the bugs > seem like they should be easy to fix. > > * When I logout of the web page, user/password is requested again. That's the only way I know of logging someone out of basic HTTP auth. If anyone knows better, please let me know... > * When doing admin, the user names should be sorted in some way. Fixed. > * Should a user be allowed to be both an owner and maintainer? > (I don't know the distinction, so it could make sense.) I'll include a description of the two on the role admin page. In short: Owner - Owns a package name, may assign Maintainer Role for that name. The first user to register information about a package is deemed Owner of the package name. The Admin user may change this if necessary. May submit updates for the package name. Maintainer - Can submit and update info for a particular package name. > * Platform is unknown, how does one set it? What are the possible values? This is undefined AFAIK. The trove list can offer some help I suppose. > * If you remove a role for a user which doesn't have the role, > you get a successful 'Role Removed OK' Will fix. > (You asked to try to break it, right? :-) Definitely! > * I was the owner (neal) for PyChecker. I removed myself as the owner, > which meant there was no owner. I clicked admin, which sent me > into an infinite loop of requesting login. Edit behaved better, > I got an error message. This is a bit silly, yes. Will add a check. > So now I can't do anything more to test PyChecker. Could someone > restore me as owner or delete the package? You're back. > * I went to update my user information. I pressed ok without > entering a password and I couldn't log in again. The password > wasn't the old password or blank. At least I couldn't use either > to login. Erk. Will fix. > * After changing my user information, I had to re-login. Assuming the password is changed, this is necessary. Richard From lac@strakt.com Sat Jan 4 10:39:12 2003 From: lac@strakt.com (Laura Creighton) Date: Sat, 04 Jan 2003 11:39:12 +0100 Subject: [Catalog-sig] initial use of PyPI In-Reply-To: Message from Richard Jones <rjones@ekit-inc.com> of "Sat, 04 Jan 2003 12:02:16 +1100." <200301041202.16548.rjones@ekit-inc.com> References: <20030103233239.GK29873@epoch.metaslash.com> <200301041202.16548.rjones@ekit-inc.com> Message-ID: <200301041039.h04AdDjL014342@ratthing-b246.strakt.com> > I'll include a description of the two on the role admin page. In short: > > Owner - Owns a package name, may assign Maintainer Role for that name. The > first user to register information about a package is deemed Owner of the > package name. The Admin user may change this if necessary. May submit updates > for the package name. Can you have multiple owners? _Must_ a package have an owner? There are useful packages, i.e. distutils, which nobody apparantly wants responsibility for right now. Laura Creighton From rjones@ekit-inc.com Sat Jan 4 11:57:59 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Sat, 4 Jan 2003 22:57:59 +1100 Subject: [Catalog-sig] initial use of PyPI In-Reply-To: <200301041039.h04AdDjL014342@ratthing-b246.strakt.com> References: <20030103233239.GK29873@epoch.metaslash.com> <200301041202.16548.rjones@ekit-inc.com> <200301041039.h04AdDjL014342@ratthing-b246.strakt.com> Message-ID: <200301042257.59650.rjones@ekit-inc.com> On Sat, 4 Jan 2003 9:39 pm, Laura Creighton wrote: > > I'll include a description of the two on the role admin page. In short: > > > > Owner - Owns a package name, may assign Maintainer Role for that name. > > The first user to register information about a package is deemed Owner of > > the package name. The Admin user may change this if necessary. May submit > > updates for the package name. > > Can you have multiple owners? _Must_ a package have an owner? There > are useful packages, i.e. distutils, which nobody apparantly wants > responsibility for right now. Yes you can have multiple owners or no owners. Richard From rjones@ekit-inc.com Mon Jan 6 23:28:32 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Tue, 7 Jan 2003 10:28:32 +1100 Subject: [Catalog-sig] one other issue w/registering on PyPI In-Reply-To: <20030104000227.GM29873@epoch.metaslash.com> References: <20030103233614.GL29873@epoch.metaslash.com> <200301041041.21412.rjones@ekit-inc.com> <20030104000227.GM29873@epoch.metaslash.com> Message-ID: <200301071028.32998.rjones@ekit-inc.com> On Sat, 4 Jan 2003 11:02 am, Neal Norwitz wrote: > On Sat, Jan 04, 2003 at 10:41:21AM +1100, Richard Jones wrote: > > On Sat, 4 Jan 2003 10:36 am, Neal Norwitz wrote: > > > I forgot to mention when registering a bunch of html was printed. I'm > > > not sure if this is for debugging and will be removed, intentional, or > > > should be removed. It seems everything between ---------- can be > > > suppressed (unless -v is specified?). > > > > It should be - the verbose output is enabled by a --verbose flag. Or at > > least that's what _should_ happen. Which version of register.py are you > > using (the CVS version from the top please). > > I used the version in CVS. If I do setup.py -q register, I don't get > the html. I wonder if this is a new thing in 2.3 - I'm not yet using 2.3, but will give it a try ASAP. Richard From rjones@ekit-inc.com Tue Jan 7 00:10:31 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Tue, 7 Jan 2003 11:10:31 +1100 Subject: [Catalog-sig] Test PEP301/PyPI updated to python.org look Message-ID: <200301071110.31380.rjones@ekit-inc.com> I've also added the sanity checks for Role editing that Neal triggered. http://www.amk.ca/cgi-bin/pypi.cgi Please view and comment :) Richard From jeremy@alum.mit.edu Thu Jan 16 18:58:25 2003 From: jeremy@alum.mit.edu (Jeremy Hylton) Date: Thu, 16 Jan 2003 13:58:25 -0500 Subject: [Catalog-sig] where are the Trove classifiers? Message-ID: <15911.209.293501.991303@slothrop.zope.com> I just skimmed the PEP and thought it would be good to make a habit of adding classifiers to my setup scripts when possible. I don't know what the classifiers are and the PEP doesn't help me find out what they are. It's nice to see progress on this front! The PEP says: The list of classifiers will be available through the web, I think the PEP should say exactly how it will be available. It also says: The list of classification values on the module index has been merged from FreshMeat and SourceForge (with their permission). This suggests that the list of classifiers already exists, in which case it seems straightforward to include it in the PEP or in another PEP titled: Classifiers for Package Index and Metadata for Distutils. It seems like the PEP is trying to avoid commiting to exactly what the classifiers are, but I don't think I understand why. If I'm going to write a setup script, I'd like to find a list of the classifiers with a brief explanation of what they are. In all likelihood, I'll add them to my setup and never change it again. Maybe at the next major release of the package, I'd consult the list of classifiers again. Perhaps the notion is that particular servers will only accept particular classifiers, but that doesn't seem practical. I'd like to be able to register my package with whatever servers people decide to use, but I don't want to change the classifiers for a particular server. I'd rather the server do what it can with what I provide it and ignore the rest. At any rate: Is there a list of valid classifiers? Jeremy From amk@amk.ca Thu Jan 16 20:07:03 2003 From: amk@amk.ca (A.M. Kuchling) Date: Thu, 16 Jan 2003 15:07:03 -0500 Subject: [Catalog-sig] where are the Trove classifiers? In-Reply-To: <15911.209.293501.991303@slothrop.zope.com>; from jeremy@zope.com on Thu, Jan 16, 2003 at 01:58:25PM -0500 References: <15911.209.293501.991303@slothrop.zope.com> Message-ID: <20030116150703.A1133@amk.ca> On Thu, Jan 16, 2003 at 01:58:25PM -0500, Jeremy Hylton wrote: >I think the PEP should say exactly how it will be available. Run 'python setup.py register --list-classifiers'. --amk From rjones@ekit-inc.com Thu Jan 16 20:31:06 2003 From: rjones@ekit-inc.com (Richard Jones) Date: Fri, 17 Jan 2003 07:31:06 +1100 Subject: [Catalog-sig] where are the Trove classifiers? In-Reply-To: <20030116150703.A1133@amk.ca> References: <15911.209.293501.991303@slothrop.zope.com> <20030116150703.A1133@amk.ca> Message-ID: <200301170731.06128.rjones@ekit-inc.com> On Fri, 17 Jan 2003 7:07 am, A.M. Kuchling wrote: > On Thu, Jan 16, 2003 at 01:58:25PM -0500, Jeremy Hylton wrote: > >I think the PEP should say exactly how it will be available. > > Run 'python setup.py register --list-classifiers'. See also the website (currently http://www.amk.ca/cgi-bin/pypi.cgi) link "List trove classifiers" which will dump the same list (the --list-classifiers command actually just requests the list from the website). Richard From yloiseau@free.fr Thu Jan 23 17:42:13 2003 From: yloiseau@free.fr (Yannick Loiseau) Date: Thu, 23 Jan 2003 18:42:13 +0100 Subject: [Catalog-sig] Graphical Package Manager Message-ID: <003901c2c306$c3a02e30$0100a8c0@pioupiou> Hello I've just learned about PyPI, and I've a (may be silly) question : is it possible to have the PyPI listing in a (hierarchical) xml format ? This could make easier to create GUI for it, such as rpm, or cygwin setup or miktex Mackage Manager under win... Is it done, planned, useless ? Does such a gui already exist ? From akuchlin@mems-exchange.org Thu Jan 23 18:43:19 2003 From: akuchlin@mems-exchange.org (Andrew Kuchling) Date: Thu, 23 Jan 2003 13:43:19 -0500 Subject: [Catalog-sig] Graphical Package Manager In-Reply-To: <003901c2c306$c3a02e30$0100a8c0@pioupiou> References: <003901c2c306$c3a02e30$0100a8c0@pioupiou> Message-ID: <20030123184319.GA12242@ute.mems-exchange.org> On Thu, Jan 23, 2003 at 06:42:13PM +0100, Yannick Loiseau wrote: >I've just learned about PyPI, and I've a (may be silly) question : > is it possible to have the PyPI listing in a (hierarchical) xml format ? ... >Is it done, planned, useless ? Does such a gui already exist ? It's very easy to turn the plain text listing into a tree, simpler than parsing an XML format would be. import sys, pprint root = {} for line in sys.stdin: d = root for arc in line.split('::'): arc = arc.strip() d = d.setdefault(arc, {}) pprint.pprint(root) Pipe the output of --list-classifiers to the above, and you get a tree of nested dictionaries: {'': {}, 'Development Status': {'1 - Planning': {}, '2 - Pre-Alpha': {}, '3 - Alpha': {}, '4 - Beta': {}, '5 - Production/Stable': {}, '6 - Mature': {}, '7 - Inactive': {}}, 'Environment': {'Console': {'Curses': {}, 'Framebuffer': {}, 'Newt': {}, 'svgalib': {}}, "Handhelds/PDA's": {}, 'MacOS X': {'Cocoa': {}, 'Carbon': {}, 'Aqua': {}}, ... --amk (www.amk.ca) Theory and reality rarely are kissing cousins. -- Christopher Petrilli, 1 Sep 1999 From Dont_miss_printsupplies120032@mindspring.com Sun Jan 26 23:15:06 2003 From: Dont_miss_printsupplies120032@mindspring.com (Dont_miss_printsupplies120032@mindspring.com) Date: dom, 26 ene 2003 11:16:35 Subject: [Catalog-sig] LASER PRINTER, COPIER, & FAX SUPPLIES. Message-ID: <865.454181.492157@unknown> <HTML><HEAD> <meta http-equiv="keywords" content="toner, laser cartridge, printer toner, toner cartridge, TonerSales ,empties, Epson, Canon, Hewlett Packard"> <STYLE> BODY {font-family="Arial"} TT {font-family="Courier New"} BLOCKQUOTE.CITE {margin:0; padding-left:0.5em; border-left:2px solid;} SPAN.TABOOHEADER {display=none} </STYLE> <title>GTTS | January 2003 Newsletter</title> <link rel="stylesheet" type="text/css" href="global.css" title="style"> </HEAD> <BODY bgcolor="ffffff"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <table width="600" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td><font size="2"><b>GT Toner Supplies</b></font></td> </tr> <tr> <td><font size="2"><b>Laser Printer, Copier, and Fax Supplies</b></font></td> </tr> <tr> <td><font size="2"><b>1-888-662-2256</b></font></td> </tr> <tr> <td><font size="2"><b>1-866-237-7397</b></font></td> </tr> <tr> <td> <p align="center">Hp-Hp color - Lexmark - Epson - Panasonic - Apple - Cannon - Xerox</p> </td> </tr> </table> <table width="673" border="0" cellspacing="0" cellpadding="1" align="center" bgcolor="99cc00"><tr><td width="669"> <table width="820" border="0" cellspacing="0" cellpadding="0" bgcolor="ffffff" height="2315"> <tr> <td width="721"><font color="#800000"><i>Please forward to the person responsible for purchasing your laser printer supplies.</i></font></td> </tr> <tr> <td width="721" height="52"><table border="0" cellspacing="6" cellpadding="0" width="609"><tr><td style="color: 666666" class="smallprint" width="595">If you received this email on error, please reply to <a href="mailto:gtts001@cable.net.co">gtts001@cable.net.co</a> with subject: REMOVE... sorry for the inconvenience.<br> </td></tr></table></td> </tr> <tr> <td width="721" height="51"><font size="4">University</font> and/or <font size="4"> School</font> purchase orders WELCOME. (<u>no credit approval required</u>)<br> Pay by check, c.o.d, or purchase order (<u>net 30 days</u>).<br> <br> <font size="3" color="#800000"> WE ACCEPT ALL MAJOR CREDIT CARDS!</font><br> <br> <a href="#hpcol">New! HP 4500/4550 series color cartridges in stock!</a> <p> </td> </tr> <tr valign="top"> <td bgcolor="ffffff" width="820" height="2096"> <b> Order by phone: Toll free 1-866-237-7397 Toll free 1-888-662-2256<br> <br> Order by email: <a href="mailto:gtts001@cable.net.co"><font color="#FF6666"> gtts001@cable.net.co</font></a> subject: ORDER</b><br> <table border="0" cellspacing="0" cellpadding="5" width="634" height="1413"> <tr> <td class="smallprint" colspan="2" height="38" width="593"> Our cartridge prices are as follows:<br> (please order by item number)<br> </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>HP</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">1 </td> <td width="479" height="2">92274A Toner Cartridge for LaserJet 4L, 4ML, 4P, 4MP<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$47.50 </td> </tr> <tr> <td width="1" height="2">2 </td> <td width="479" height="2">C4092A Black Toner Cartridge for LaserJet 1100A, ASE, 3200SE<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$45.50 </td> </tr> <tr> <td width="1" height="1">2A </td> <td width="479" height="1">C7115A Toner Cartridge For HP LaserJet 1000, 1200, 3330<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$55.50 </td> </tr> <tr> <td width="1" height="1">2B </td> <td width="479" height="1">C7115X High Capacity Toner Cartridge for HP LaserJet 1000, 1200, 3330<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$65.50 </td> </tr> <tr> <td width="1" height="1">3 </td> <td width="479" height="1">92295A Toner Cartridge for LaserJet II, IID, III, IIID<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$49.50 </td> </tr> <tr> <td width="1" height="1">4 </td> <td width="479" height="1">92275A Toner Cartridge for LaserJet IIP, IIP+, IIIP<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$55.50 </td> </tr> <tr> <td width="1" height="1">5 </td> <td width="479" height="1">C3903A Toner Cartridge for LaserJet 5P, 5MP, 6P, 6Pse, 6MP, 6Pxi<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$46.50 </td> </tr> <tr> <td width="1" height="1">6 </td> <td width="479" height="1">C3909A Toner Cartridge for LaserJet 5Si, 5SiMX, 5Si Copier, 8000<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$92.50 </td> </tr> <tr> <td width="1" height="1">7 </td> <td width="479" height="1">C4096A Toner Cartridge for LaserJet 2100, 2200DSE, 2200DTN<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$72.50 </td> </tr> <tr> <td width="1" height="1">8 </td> <td width="479" height="1">C4182X UltraPrecise High Capacity Toner Cartridge for LaserJet 8100 Series<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$125.50 </td> </tr> <tr> <td width="1" height="1">9 </td> <td width="479" height="1">C3906A Toner Cartridge for LaserJet 5L, 5L Xtra, 6Lse, 6L, 6Lxi, 3100se<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$42.50 </td> </tr> <tr> <td width="1" height="1">9A </td> <td width="479" height="1">C3906A Toner Cartridge for LaserJet 3100, 3150<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$42.50 </td> </tr> <tr> <td width="1" height="1">10 </td> <td width="479" height="1">C3900A Black Toner Cartridge for HP LaserJet 4MV, 4V<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$89.50 </td> </tr> <tr> <td width="1" height="1">11 </td> <td width="479" height="1">C4127A Black Toner Cartridge for LaserJet 4000SE, 4000N, 4000T, 4000TN<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$76.50 </td> </tr> <tr> <td width="1" height="1">11A </td> <td width="479" height="1">C8061A Black Laser Toner for HP LaserJet 4100, 4100N<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$76.50 </td> </tr> <tr> <td width="1" height="2">11B </td> <td width="479" height="2">C8061X High Capacity Toner Cartridge for LJ4100, 4100N<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$85.50 </td> </tr> <tr> <td width="1" height="2">11C </td> <td width="479" height="2">C4127X High Capacity Black Cartridge for LaserJet 4000SE,4000N,4000T,4000TN<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$84.50 </td> </tr> <tr> <td width="1" height="1">12 </td> <td width="479" height="1">92291A Toner Cartridge for LaserJet IIISi, 4Si, 4SiMX<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$57.50 </td> </tr> <tr> <td width="1" height="1">13 </td> <td width="479" height="1">92298A Toner Cartridge for LaserJet 4, 4 Plus, 4M, 4M Plus, 5, 5se, 5M, 5N<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$46.50 </td> </tr> <tr> <td width="1" height="1">14 </td> <td width="479" height="1">C4129X High Capacity Black Toner Cartridge for LaserJet 5000N<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$97.50 </td> </tr> <tr> <td width="1" height="1">15 </td> <td width="479" height="1">LASERFAX 500, 700 (FX1)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$49.00 </td> </tr> <tr> <td width="1" height="1">16 </td> <td width="479" height="1">LASERFAX 5000, 7000 (FX2)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$54.00 </td> </tr> <tr> <td width="1" height="1">17 </td> <td width="479" height="1">LASERFAX (FX3)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$49.00 </td> </tr> <tr> <td width="1" height="1">18 </td> <td width="479" height="1">LASERFAX (FX4)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$49.00 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>HP <font color="#0000FF">C</font><font color="#FF6666">O</font>L<font color="#800000">O</font><font color="#CC6600">R<a name="hpcol"></a></font></b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">C1 </td> <td width="479" height="2">C4194a Toner Cartridge, Yellow (color lj 4500/4550 series)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$89.50 </td> </tr> <tr> <td width="1" height="2">C2 </td> <td width="479" height="2">C4193a Toner Cartridge, Magenta (color lj 4500/4550 series)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$89.50 </td> </tr> <tr> <td width="1" height="1">C3 </td> <td width="479" height="1">C4192a toner cartridge, cyan (color lj 4500/4550 series)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$89.50 </td> </tr> <tr> <td width="1" height="1">C4 </td> <td width="479" height="1">c4191a toner cartridge, black (color lj 4500/4550 series)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$74.50 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>LEXMARK</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">19 </td> <td width="479" height="2">1380520 High Yield Black Laser Toner for 4019, 4019E, 4028, 4029, 6, 10, 10L<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$109.50 </td> </tr> <tr> <td width="1" height="2">20 </td> <td width="479" height="2">1382150 High Yield Toner for 3112, 3116, 4039-10+, 4049- Model 12L,16R, Optra<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$109.50 </td> </tr> <tr> <td width="1" height="1">21 </td> <td width="479" height="1">69G8256 Laser Cartridge for Optra E, E+, EP, ES, 4026, 4026 (6A,6B,6D,6E)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$49.00 </td> </tr> <tr> <td width="1" height="1">22 </td> <td width="479" height="1">13T0101 High Yield Toner Cartridge for Lexmark Optra E310, E312, E312L<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$89.00 </td> </tr> <tr> <td width="1" height="1">23 </td> <td width="479" height="1">1382625 High-Yield Laser Toner Cartridge for Lexmark Optra S (4059)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$129.50 </td> </tr> <tr> <td width="1" height="1">24 </td> <td width="479" height="1">12A5745 High Yield Laser Toner for Lexmark Optra T610, 612, 614 (4069)<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$165.00 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>EPSON</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">25 </td> <td width="479" height="2">S051009 Toner Cartridge for Epson EPL7000, 7500, 8000+<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$115.50 </td> </tr> <tr> <td width="1" height="2">25A </td> <td width="479" height="2">S051009 LP-3000 PS 7000<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2">$115.50 </td> </tr> <tr> <td width="1" height="1">26 </td> <td width="479" height="1">AS051011 Imaging Cartridge for ActionLaser-1000, 1500<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$99.50 </td> </tr> <tr> <td width="1" height="1">26A </td> <td width="479" height="1">AS051011 EPL-5000, EPL-5100, EPL-5200<img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="1">$99.50 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>PANASONIC</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">27 </td> <td width="479" height="2">Nec series 2 models 90 and 95<br> <img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"> </td> <td width="1" height="2"> $109.50 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><b><font size="3">APPLE</font></b> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="2">28 </td> <td width="479" height="2">2473G/A Laser Toner for LaserWriter Pro 600, 630, LaserWriter 16/600 PS<br> <font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="2"> $57.50 </td> </tr> <tr> <td width="1" height="2">29 </td> <td width="479" height="2">1960G/A Laser Toner for Apple LaserWriter Select, 300, 310, 360<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="2"> $ 71.50 </td> </tr> <tr> <td width="1" height="1">30 </td> <td width="479" height="1">M0089LL/A Toner Cartridge for Laserwriter 300, 320 (74A)<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 52.50 </td> </tr> <tr> <td width="1" height="1">31 </td> <td width="479" height="1">M6002 Toner Cartridge for Laserwriter IINT, IINTX, IISC, IIF, IIG (95A)<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 47.50 </td> </tr> <tr> <td width="1" height="1">31A </td> <td width="479" height="1">M0089LL/A Toner Cartridge for Laserwriter LS, NT, NTR, SC (75A)<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 55.50 </td> </tr> <tr> <td width="1" height="1">32 </td> <td width="479" height="1">M4683G/A Laser Toner for LaserWriter 12, 640PS<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1">$85.50 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>CANON</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="1">33 </td> <td width="479" height="1">Fax CFX-L3500, CFX-4000 CFX-L4500, CFX-L4500IE & IF FX3<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1">$49.50 </td> </tr> <tr> <td width="1" height="1">33A </td> <td width="479" height="1">L-250, L-260i, L-300 FX3<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="1">33B </td> <td width="479" height="1">LASER CLASS 2060, 2060P, 4000 FX3 <font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="1">34 </td> <td width="479" height="1">LASER CLASS 5000, 5500, 7000, 7100, 7500, 6000 FX2<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="2">35 </td> <td width="479" height="2">FAX 5000 FX2 <font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="2"> $49.50 </td> </tr> <tr> <td width="1" height="1">36 </td> <td width="479" height="1">LASER CLASS 8500, 9000, 9000L, 9000MS, 9500, 9500 MS, 9500 S FX4<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="1">36A </td> <td width="479" height="1">Fax L700,720,760,770,775,777,780,785,790, & L3300 FX1<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="1">36B </td> <td width="479" height="1">L-800, L-900 FX4<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $49.50 </td> </tr> <tr> <td width="1" height="1">37 </td> <td width="479" height="1">A30R Toner Cartridge for PC-6, 6RE, 7, 11, 12<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $59.50 </td> </tr> <tr> <td width="1" height="1">38 </td> <td width="479" height="1">E-40 Toner Cartridge for PC-720, 740, 770, 790,795, 920, 950, 980<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $85.50 </td> </tr> <tr> <td width="1" height="1">38A </td> <td width="479" height="1">E-20 Toner Cartridge for PC-310, 325, 330, 330L, 400, 420, 430<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $85.50 </td> </tr> <tr> <td width="1" height="2"><font size="3"><b>Item</b></font> </td> <td width="479" height="2"> <p align="center"><font size="3"><b>XEROX</b></font> </td> <td width="1" height="2"><font size="3"><b>Price</b></font> </td> </tr> <tr> <td width="1" height="1">39 </td> <td width="479" height="1">6R900 75A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 55.50 </td> </tr> <tr> <td width="1" height="1">40 </td> <td width="479" height="1">6R903 98A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 46.50 </td> </tr> <tr> <td width="1" height="1">41 </td> <td width="479" height="1">6R902 95A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 49.50 </td> </tr> <tr> <td width="1" height="1">42 </td> <td width="479" height="1">6R901 91A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 65.50 </td> </tr> <tr> <td width="1" height="1">43 </td> <td width="479" height="1">6R908 06A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 42.50 </td> </tr> <tr> <td width="1" height="1">44 </td> <td width="479" height="1">6R899 74A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 47.50 </td> </tr> <tr> <td width="1" height="1">45 </td> <td width="479" height="1">6R928 96A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 72.50 </td> </tr> <tr> <td width="1" height="1">46 </td> <td width="479" height="1">6R926 27X<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 84.50 </td> </tr> <tr> <td width="1" height="1">47 </td> <td width="479" height="1">6R906 09A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 92.50 </td> </tr> <tr> <td width="1" height="1">48 </td> <td width="479" height="1">6R907 4MV<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $ 89.50 </td> </tr> <tr> <td width="1" height="1">49 </td> <td width="479" height="1">6R905 03A<font size="3"><img src="http://www.cafepress.com/cp/newsletter/img/red.gif" width="588" height="1" alt="" border="0"></font> </td> <td width="1" height="1"> $46.50 </td> </tr> <tr> <td colspan="2" height="28" width="593"> <div align="center"><p><font size="3">call toll free 1-866-237-7397</font><br> </p></div> </td> </tr> <tr> <td colspan="2" height="28" width="593"> 30 Day unlimited warranty included on all products<br> GT Toner Supplies guarantees these cartridges to be free from defects in workmanship and material.<br> <br> We look forward in doing business with you.<br> <br> We Guarantee your satisfaction!!! </td> </tr> <tr> <td width="593" class="smallprint" colspan="2" height="40"></td> </tr> <tr> <td width="593" class="smallprint" colspan="2" height="40"><table border="0" cellspacing="6" cellpadding="0" width="547"> <tr> <td width="329" class="smallprint" height="40"><table border="0" cellspacing="6" cellpadding="0" width="349"><tr><td style="color: 666666" class="smallprint" width="335"> If you are ordering by purchase order please fill out an order form<br> with the following information: <br> <br> purchase order number<br> phone number<br> company or school name<br> shipping address and billing address<br> city, state zip code Order Now <br> <br> </td></tr></table></td> <td align="right" height="40" width="196"> <p align="center"> <u><font color="#FF6666"> call toll free</font></u> </p> <p align="center"> <u><font color="#FF6666">1-866-237-7397</font></u><br> </p> </td> </tr> <tr> <td width="329" class="smallprint" height="40"><table border="0" cellspacing="6" cellpadding="0" width="353"><tr><td style="color: 666666" class="smallprint" width="339"> If you are ordering by e-mail or c.o.d. please fill out an order<br> form with the following information: <br> <br> phone number<br> company name<br> first and last name<br> street address<br> city, state zip code <br> <br> </td></tr></table></td> <td align="right" height="40" width="196"> <p align="center"> <u><font color="#FF6666"> call toll free</font></u> </p> <p align="center"> <u><font color="#FF6666">1-866-237-7397</font></u><br> </p> </td> </tr> </table></td> </tr> <tr><td colspan="2" height="28" width="593"> <font size="1"> All trade marks and brand names listed above are property of the respective<br> holders and used for descriptive purposes only.</font> </td></tr> </table> </td> </tr></table> </td> </tr> </table> <table width="600" cellspacing="0" cellpadding="10" align="center"><tr><td class="smallprint" style="color:666666;" align="center">PLEASE DO NOT REPLY TO THIS EMAIL </td></tr></table> </body> </html>