Differences between revisions 1 and 28 (spanning 27 versions)
Revision 1 as of 2007-05-13 14:00:03
Size: 5056
Editor: c-a293e355
Comment:
Revision 28 as of 2011-02-07 05:15:58
Size: 12170
Editor: cpe-76-95-15-233
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Getting Your Own python-dev Tracker =

This page describes how to setup a roundup tracker instance that works
exactly as the tracker for python-dev on http://bugs.python.org. The
intended audience is people that want to help out with the tracker,
developing new features etc.

= Requirements =

 * Roundup, from the vendor branch used for python-dev (see below).

 * PostgreSQL for use as backend database.

 * A checkout of the python-dev instance from python's subversion repository.

== Installing roundup ==

For python-dev, we use a slighly modified version of roundup which has
some features that are not yet in the core roundup. To keep track of
the changes, we keep a vendor branch of roundup.

Check out /tracker/roundup-src from the python subversion
repository as documented on http://python.org/dev/tools/. For
example, here's how to do anonymous checkout:

{{{
  svn co http://svn.python.org/projects/tracker/roundup-src
}}}

Install this roundup somewhere by running setup.py

{{{
  cd roundup-src
  python setup.py install --prefix /opt/tracker-roundup/
}}}

== Install and configure PostgreSQL ==

For the python-dev tracker instance we use PostgreSQL as backend
database. Roundup has support for many different databases for backend
(anydbm, metakit, MySQL, PostgreSQL, SQLite...), but for the python-dev
instance, PostgreSQL was selected as it has the best performance for
large installations. Also, for performance reasons, there is at least
one place in the python-dev instance that has a hardcoded dependency
on the backend being an SQL-based one, so you do need PostgreSQL even
for development work (another SQL-based backend might work, but this
has not been tested). I recommend that you run postgreSQL to make your
development environment behave exactly like the environment the real
tracker runs in.

Details on how to install PostgreSQL is outside the scope of this Wiki
Page. Both version 7.4 and 8.1 of PostgreSQL has been tested without
any known problems.

Access configuration of postgresql can be tricky. You need to make
sure that the user you're running roundup as (your unix/windows user)
has access to the postgresql database you intend to use for roundup,
as the postgresql user you've configured in roundup's configuration.

For a development environment with no demands on security, the easiest
way to configure this is probably to allow all users to connect as any
database user as long as the request originates from the local
host. This can be accomplished by the following lines in pg_hba.conf:

{{{
local all all trust
host all all 127.0.0.1 255.255.255.255 trust
}}}

'''PLEASE NOTE''': This is not a secure configuration on a multi-user
machine.

After the change in pg_hba.conf, reload your postgreSQL database to
make sure it knows about your new access
configuration. Something similar to ''/etc/init.d/postgresql reload''
should do the trick on Unix-like platforms.

Create a database user that is allowed to create databases. This user
will be used when roundup connects to the database.

{{{
# psql -U postgres
postgres=# create user roundup;
postgres=# alter user roundup with createdb;
}}}

== Checkout and Configure your Development Roundup Instance ==

The python-dev tracker instance is version-controlled with subversion,
and resides in the python subversion repository.

{{{
  svn co http://svn.python.org/projects/tracker/instances/python-dev
}}}

Now enter the python-dev directory, and create the 'db' directory (not
in svn as it's just to much fuzz to keep it there - every time you run
''roundup-admin init'' it is removed and recreated, confusing svn who
wants to keep its .svn directory intact), as well as the
db/backend_name file which decides which backend (i.e. database type)
to use:

{{{
cd python-dev
mkdir db
echo postgresql > db/backend_name
}}}

Copy python-dev/config.ini.template into config.ini, and modify it
according to your site. Pay special attention to settings marked with
''NO DEFAULT''. However, if you've configure your PostgreSQL as above,
most settings should be OK.

If you need to do development on the busybody or tellteam detectors,
copy detectors/config.ini.template into detectors/config.ini, and
adjust the e-mail addresses accordingly.

Initialize your roundup instance:

{{{
/opt/tracker-roundup/bin/roundup-admin -i <your python-dev directory> init
}}}

Provide a password for the 'admin' user when asked for.

Start your roundup instance:

{{{
/opt/tracker-roundup/bin/roundup-server -p 9999 python-dev=<your python-dev directory>
}}}

You should now be able to browse http://localhost:9999/python-dev/ and
get a roundup instance that looks just like http://bugs.python.org.

== Getting Help ==

Subscribe to and ask your question on the tracker-discuss mailing list. See http://mail.python.org/mailman/listinfo/tracker-discuss
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Major Version</key><integer>1</integer>
 <key>Minor Version</key><integer>1</integer>
 <key>Application Version</key><string>10.0.1</string>
 <key>Features</key><integer>5</integer>
 <key>Show Content Ratings</key><true/>
 <key>Music Folder</key><string>file://localhost/C:/Users/Little%20boo's/Music/iTunes/iTunes%20Media/</string>
 <key>Library Persistent ID</key><string>56C846425DCB0807</string>
 <key>Tracks</key>
 <dict>
 </dict>
 <key>Playlists</key>
 <array>
  <dict>
   <key>Name</key><string>Library</string>
   <key>Master</key><true/>
   <key>Playlist ID</key><integer>62</integer>
   <key>Playlist Persistent ID</key><string>6B5192ABD7E406C5</string>
   <key>Visible</key><false/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>Music</string>
   <key>Playlist ID</key><integer>99</integer>
   <key>Playlist Persistent ID</key><string>D470D7D860E65703</string>
   <key>Distinguished Kind</key><integer>4</integer>
   <key>Music</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>Movies</string>
   <key>Playlist ID</key><integer>102</integer>
   <key>Playlist Persistent ID</key><string>4CA44C4E89CEA18E</string>
   <key>Distinguished Kind</key><integer>2</integer>
   <key>Movies</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>TV Shows</string>
   <key>Playlist ID</key><integer>105</integer>
   <key>Playlist Persistent ID</key><string>B65ABAB583B6313E</string>
   <key>Distinguished Kind</key><integer>3</integer>
   <key>TV Shows</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>Podcasts</string>
   <key>Playlist ID</key><integer>89</integer>
   <key>Playlist Persistent ID</key><string>AF51FF5887F2ABF4</string>
   <key>Distinguished Kind</key><integer>10</integer>
   <key>Podcasts</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>iTunes U</string>
   <key>Playlist ID</key><integer>96</integer>
   <key>Playlist Persistent ID</key><string>00EC9E971E8C7034</string>
   <key>Distinguished Kind</key><integer>31</integer>
   <key>iTunesU</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>Genius</string>
   <key>Playlist ID</key><integer>117</integer>
   <key>Playlist Persistent ID</key><string>9A1271A9DDC8AA3B</string>
   <key>Distinguished Kind</key><integer>26</integer>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>iTunes DJ</string>
   <key>Playlist ID</key><integer>86</integer>
   <key>Playlist Persistent ID</key><string>A1E3B9920781A20D</string>
   <key>Distinguished Kind</key><integer>22</integer>
   <key>Party Shuffle</key><true/>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>90’s Music</string>
   <key>Playlist ID</key><integer>65</integer>
   <key>Playlist Persistent ID</key><string>BF980AAB163D3BBA</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAEAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAB8YAAAAAAAAAAAAAAAAAAAAB
   AAAAAAAAB88AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgFNMc3QAAQAB
   AAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAB
   AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAABAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAIAAAAAAAAAAA
   AAAAAAAAAAEAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAA==
   </data>
  </dict>
  <dict>
   <key>Name</key><string>Classical Music</string>
   <key>Playlist ID</key><integer>83</integer>
   <key>Playlist Persistent ID</key><string>09C8A5F1302E7EB7</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAU0xzdAABAAEAAAACAAAAAQAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAADwAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAABEAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAB
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAg
   AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnpTTHN0AAEAAQAAAAcAAAAB
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAACAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAABIAQwBsAGEAcwBzAGkAYwBhAGwAAAAIAQAAAQAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABLAGwAYQBzAHMAaQBlAGsAAAAI
   AQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgBD
   AGwAYQBzAHMAaQBxAHUAZQAAAAgBAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAOAEsAbABhAHMAcwBpAGsAAAAIAQAAAQAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABDAGwAYQBzAHMAaQBjAGEAAAAI
   AQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjCv
   MOkwtzDDMK8AAAAIAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAADgBDAGwA4QBzAGkAYwBh
   </data>
  </dict>
  <dict>
   <key>Name</key><string>Music Videos</string>
   <key>Playlist ID</key><integer>80</integer>
   <key>Playlist Persistent ID</key><string>47838FAA7473D9E5</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAQAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAB
   AAAAAAAAACAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAA=
   </data>
  </dict>
  <dict>
   <key>Name</key><string>My Top Rated</string>
   <key>Playlist ID</key><integer>68</integer>
   <key>Playlist Persistent ID</key><string>93567CA63078958D</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAQAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAADwAAAAAAAAAAAAAAAAAAAAB
   AAAAAAAAADwAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAA=
   </data>
  </dict>
  <dict>
   <key>Name</key><string>Recently Added</string>
   <key>Playlist ID</key><integer>77</integer>
   <key>Playlist Persistent ID</key><string>293DC59709FDA04A</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAIAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABELa4tri2uLa7//////////gAAAAAACTqA
   La4tri2uLa4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AgAAAQAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAB
   AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
   AAAAAAAA
   </data>
  </dict>
  <dict>
   <key>Name</key><string>Recently Played</string>
   <key>Playlist ID</key><integer>74</integer>
   <key>Playlist Persistent ID</key><string>7AD3F5D01921E02D</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAIAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABELa4tri2uLa7//////////gAAAAAACTqA
   La4tri2uLa4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AgAAAQAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAB
   AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
   AAAAAAAA
   </data>
  </dict>
  <dict>
   <key>Name</key><string>Top 25 Most Played</string>
   <key>Playlist ID</key><integer>71</integer>
   <key>Playlist Persistent ID</key><string>FE3E7D92EFF625EF</string>
   <key>All Items</key><true/>
   <key>Smart Info</key>
   <data>
   AQEBAwAAABkAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAA==
   </data>
   <key>Smart Criteria</key>
   <data>
   U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADkCAAABAAAAAAAAAAAAAAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAB
   AAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAAAEAAA
   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAA
   AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
   AAAAAAAA
   </data>
  </dict>
  <dict>
   <key>Name</key><string>untitled playlist</string>
   <key>Playlist ID</key><integer>120</integer>
   <key>Playlist Persistent ID</key><string>2789545ED37C4682</string>
   <key>All Items</key><true/>
  </dict>
  <dict>
   <key>Name</key><string>untitled playlist 2</string>
   <key>Playlist ID</key><integer>123</integer>
   <key>Playlist Persistent ID</key><string>E7B4CB67986BDF98</string>
   <key>All Items</key><true/>
  </dict>
 </array>
</dict>
</plist>
XSLT option disabled, please look at HelpOnConfiguration.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Major Version</key><integer>1</integer>
        <key>Minor Version</key><integer>1</integer>
        <key>Application Version</key><string>10.0.1</string>
        <key>Features</key><integer>5</integer>
        <key>Show Content Ratings</key><true/>
        <key>Music Folder</key><string>file://localhost/C:/Users/Little%20boo's/Music/iTunes/iTunes%20Media/</string>
        <key>Library Persistent ID</key><string>56C846425DCB0807</string>
        <key>Tracks</key>
        <dict>
        </dict>
        <key>Playlists</key>
        <array>
                <dict>
                        <key>Name</key><string>Library</string>
                        <key>Master</key><true/>
                        <key>Playlist ID</key><integer>62</integer>
                        <key>Playlist Persistent ID</key><string>6B5192ABD7E406C5</string>
                        <key>Visible</key><false/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>Music</string>
                        <key>Playlist ID</key><integer>99</integer>
                        <key>Playlist Persistent ID</key><string>D470D7D860E65703</string>
                        <key>Distinguished Kind</key><integer>4</integer>
                        <key>Music</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>Movies</string>
                        <key>Playlist ID</key><integer>102</integer>
                        <key>Playlist Persistent ID</key><string>4CA44C4E89CEA18E</string>
                        <key>Distinguished Kind</key><integer>2</integer>
                        <key>Movies</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>TV Shows</string>
                        <key>Playlist ID</key><integer>105</integer>
                        <key>Playlist Persistent ID</key><string>B65ABAB583B6313E</string>
                        <key>Distinguished Kind</key><integer>3</integer>
                        <key>TV Shows</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>Podcasts</string>
                        <key>Playlist ID</key><integer>89</integer>
                        <key>Playlist Persistent ID</key><string>AF51FF5887F2ABF4</string>
                        <key>Distinguished Kind</key><integer>10</integer>
                        <key>Podcasts</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>iTunes U</string>
                        <key>Playlist ID</key><integer>96</integer>
                        <key>Playlist Persistent ID</key><string>00EC9E971E8C7034</string>
                        <key>Distinguished Kind</key><integer>31</integer>
                        <key>iTunesU</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>Genius</string>
                        <key>Playlist ID</key><integer>117</integer>
                        <key>Playlist Persistent ID</key><string>9A1271A9DDC8AA3B</string>
                        <key>Distinguished Kind</key><integer>26</integer>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>iTunes DJ</string>
                        <key>Playlist ID</key><integer>86</integer>
                        <key>Playlist Persistent ID</key><string>A1E3B9920781A20D</string>
                        <key>Distinguished Kind</key><integer>22</integer>
                        <key>Party Shuffle</key><true/>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>90’s Music</string>
                        <key>Playlist ID</key><integer>65</integer>
                        <key>Playlist Persistent ID</key><string>BF980AAB163D3BBA</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAEAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAB8YAAAAAAAAAAAAAAAAAAAAB
                        AAAAAAAAB88AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgFNMc3QAAQAB
                        AAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAB
                        AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAABAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAIAAAAAAAAAAA
                        AAAAAAAAAAEAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAA==
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>Classical Music</string>
                        <key>Playlist ID</key><integer>83</integer>
                        <key>Playlist Persistent ID</key><string>09C8A5F1302E7EB7</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAU0xzdAABAAEAAAACAAAAAQAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAADwAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAABEAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAB
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAg
                        AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnpTTHN0AAEAAQAAAAcAAAAB
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAACAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAABIAQwBsAGEAcwBzAGkAYwBhAGwAAAAIAQAAAQAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABLAGwAYQBzAHMAaQBlAGsAAAAI
                        AQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgBD
                        AGwAYQBzAHMAaQBxAHUAZQAAAAgBAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAOAEsAbABhAHMAcwBpAGsAAAAIAQAAAQAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABDAGwAYQBzAHMAaQBjAGEAAAAI
                        AQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjCv
                        MOkwtzDDMK8AAAAIAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAADgBDAGwA4QBzAGkAYwBh
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>Music Videos</string>
                        <key>Playlist ID</key><integer>80</integer>
                        <key>Playlist Persistent ID</key><string>47838FAA7473D9E5</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAQAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAB
                        AAAAAAAAACAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>My Top Rated</string>
                        <key>Playlist ID</key><integer>68</integer>
                        <key>Playlist Persistent ID</key><string>93567CA63078958D</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAAQAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAADwAAAAAAAAAAAAAAAAAAAAB
                        AAAAAAAAADwAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAA=
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>Recently Added</string>
                        <key>Playlist ID</key><integer>77</integer>
                        <key>Playlist Persistent ID</key><string>293DC59709FDA04A</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAIAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABELa4tri2uLa7//////////gAAAAAACTqA
                        La4tri2uLa4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AgAAAQAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAB
                        AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
                        AAAAAAAA
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>Recently Played</string>
                        <key>Playlist ID</key><integer>74</integer>
                        <key>Playlist Persistent ID</key><string>7AD3F5D01921E02D</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEAAwAAAAIAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAIAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABELa4tri2uLa7//////////gAAAAAACTqA
                        La4tri2uLa4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AgAAAQAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAB
                        AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
                        AAAAAAAA
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>Top 25 Most Played</string>
                        <key>Playlist ID</key><integer>71</integer>
                        <key>Playlist Persistent ID</key><string>FE3E7D92EFF625EF</string>
                        <key>All Items</key><true/>
                        <key>Smart Info</key>
                        <data>
                        AQEBAwAAABkAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAA==
                        </data>
                        <key>Smart Criteria</key>
                        <data>
                        U0xzdAABAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADkCAAABAAAAAAAAAAAAAAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAB
                        AAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAAAEAAA
                        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAA
                        AAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAA
                        AAAAAAAA
                        </data>
                </dict>
                <dict>
                        <key>Name</key><string>untitled playlist</string>
                        <key>Playlist ID</key><integer>120</integer>
                        <key>Playlist Persistent ID</key><string>2789545ED37C4682</string>
                        <key>All Items</key><true/>
                </dict>
                <dict>
                        <key>Name</key><string>untitled playlist 2</string>
                        <key>Playlist ID</key><integer>123</integer>
                        <key>Playlist Persistent ID</key><string>E7B4CB67986BDF98</string>
                        <key>All Items</key><true/>
                </dict>
        </array>
</dict>
</plist>

TrackerDevelopment (last edited 2017-03-01 19:24:10 by EzioMelotti)

Unable to edit the page? See the FrontPage for instructions.