Changes for version 0.066 - 2013-03-26

  • HEADLINES:
  • Your MUST uninstall both Pinto and App::Pinto before installing this.
  • For local repositories, you'll need to have App::Pinto 0.066 or later.
  • This release is not (yet) compatible with any Pinto::Server.
  • IMPORTANT:
  • Bad news: This version of Pinto is not compatible with *existing* repositories. To migrate, you'll need to create a new repository (using this version of Pinto) and then "pull" all the distributons from your old repository into the new one. Repeat this process for each stack. Unfortunatley, you will loose your revision history. If you bug me about it, I'll write a script to automate this for you. I am thaljef@cpan.org.
  • Good news: This version of Pinto has hooks to do future migrations automatically. So any repository you create with *this version* of Pinto can be easily migrated to any future versions. I'm also pretty confident that the schema is now stable, so a migration will not be required for a while.
  • CHANGES:
  • Switched from using Archive::Tar to Archive::Extract. The latter will attempt to use tar(1) to unpack the archive, which works much better with older archives. This is a bit slower however. If you don't have tar(1), it falls back to using Archive::Tar internally.
  • Switched from using HTTP::UserAgent to HTTP::Tiny. This cuts out one non-core dependency. But some of Pinto's upstream dependencies probably still use HTTP::UserAgent, so the net effect is moot.
  • The version control subsystem has been completely redesigned. Pinto now stores full snaphots of the stack at each revision and organizes them in a directed graph, much like Git does. Each revision is now identified by a unique non-sequential identifier.
  • The interface with the terminal has been completely redesigned. You'll see fewer (but hopefully better) diagnostic messages when running in verbose mode. And if not verbose, then you'll see a progress meter. If you still want to see all the gory details, then set the PINTO_DEBUG environment variable.
  • The logger has been completely removed, so Pinto no longer records diagnostic messages. Recording them never proved to be useful anyway. All the important changes to the stacks are still recorded in the revision log though.
  • Several Action classes have been added, removed, renamed, or repurposed. The specifics are not described here because the Pinto API is still private. See the change log for App::Pinto for a description of all the public interface changes.

Changes for version 0.065_06 - 2013-03-23

Changes for version 0.065_05 - 2013-03-20

Changes for version 0.065_04 - 2013-03-20

Changes for version 0.065_03 - 2013-03-19

Changes for version 0.065_02 - 2013-03-15

Changes for version 0.065_01 - 2013-03-15

  • !! DEVELOPER RELEASES !!
  • Changes consolidated above under version 0.066.

Documentation

Fetch a distribution and report the package index

Modules

Curate a repository of Perl modules
Base class for all Actions
Add a local distribution into the repository
Remove orphaned archives
Create a new stack by copying another
Set the default stack
Delete archives from the repository
Show the difference between two stacks
Install packages from the repository
Permanently delete a stack
List the contents of a stack
Lock a stack to prevent future changes
Show revision log for a stack
Create a new empty stack
A no-op action
Force a package to stay in a stack
Show or change stack properties
Pull upstream distributions into the repository
Register packages from existing archives on a stack
Change the name of a stack
List known stacks in the repository
Report statistics about the repository
Unlock a stack to allow future changes
Loosen a package that has been pinned
Unregister packages from a stack
Report distributions that are missing
Unpack an archive into a temporary directory
Base class for interactive interfaces
Interface for terminal-based interaction
Utility class for commit message templates
Internal configuration for a Pinto repository
Interface to the Pinto database
Compute difference between two revisions
Manages indexes files from upstream repositories
Write records to an 02packages.details.txt file
Initializes a new Pinto repository
Manage locks to synchronize concurrent operations
Migrate an existing repository to a new version
Generates a stub 03modlist.data.gz file
Extract packages provided/required by a distribution archive
Iterates through distribution prerequisites
Coordinates the database, files, and indexes
The result from running an Action
Iterates through distribution prerequisites
Role for actions that commit changes to the repository
Something that fetches remote files
Something pulls packages to a stack
Something that has chrome plating
Something pulls packages to a stack
Attributes and methods for all Schema::Result objects
Role for actions that are transactional
The DBIx::Class::Schema for Pinto
Represents the relationship between revisions
Represents a distribution archive
Represents a Package provided by a Distribution
Represents a Distribution -> Package dependency
Represents the relationship between a Package and a Stack
Represents a set of changes to a stack
Represents a named set of Packages
Common queries for Distributions
Common queries for Packages
Common queries for Registrations
Report statistics about a Pinto repository
Storage for distribution archives
A class for testing a Pinto repository
Static helper functions for testing

Provides

in lib/Pinto/Difference.pm