0.066 2013-03-26 16:16:12 America/Los_Angeles
HEADLINES:
* Your MUST uninstall both Pinto and App::Pinto before installing this.
* For local repositories, you'll need to have Pinto 0.066 or later.
* This release does not support remote repositories (yet).
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.
COMMANDS:
Many pinto commands have been been renamed, removed, or repurposed.
Read the manual for each command to get full details. Here is a
summary of changes:
New Commands:
* The new "default" command now takes the place of the --default
option that existed on the (now defunct) "edit" command. Use the
"default" command to mark the default stack. You can also choose
to have no default stack in your repository, so that that every
command will need to specify an explicit stack as an argument or
option.
* The new "kill" command takes the place of the "delete" command,
which has been repurposed (see below). The command also accepts
a --force option which kills the stack even if it is locked.
* The "delete" command has been repurposed to permanently remove
an archive (and all of its history) from the repository. This
command is highly experimental. Be sure to read the caveats in
the manual for this command.
* The new "lock" command locks a stack so that its packages
cannot be changed by future commands. This is useful for
creating a read-only "tag" of a stack. There is also an "unlock"
command.
* The new "register" command registers the packages within an
existing archive on a stack. The archive must already be in the
repository.
* The new "unregister" command unregisters an archive from a stack,
so that its packages will no longer appear in the index but the
archive still remains in the repository.
* The new "diff" command shows the difference between the head
revisions of two stacks.
* The new "migrate" command migrates existing repositories to be
compatible with the current version of Pinto. This will only
work for repositories that were created with THIS version of
Pinto or later. Contact thaljef@cpan.org if you need to migrate
an older repository.
Changed Commands:
* The --stack option on the "init" command is no longer supported.
Instead, you can specify the initial stack name as an argument. Also
the --bare option is not supported either. When you create a repository
with the "init" command the initial stack is now called "master".
* The "copy" command no longer requires a commit message because
the operation no longer creates an event in the revision history.
* The "list" command no longer supports "%" to indicate that it should
list the contents of all stacks. Instead, use the "diff" command for
a more concise way to compare stacks.
* The "log" command no longer takes a revision argument (e.g. "dev@673")
because revisions are no longer identified by a sequence number. But
a similar feature will be avialable in the next release. Also, the
--details opton is not supported any more, but it will probably come
back in the next release.
* The --norecurse and --dryrun options have been renamed to --no-recurse
and --dry-run on all commands that support them. This is to be consistent
with other multi-word option names.
Removed Commands:
* The "merge" and "revert" commands have been removed. At this time
it just isn't clear how they should behave or even what their use case
is. When I know more, I may bring these back.
* The "edit" command is also gone. It's functionality has been replaced
with the "props" command, which can now show & set properties.
* The "blame" command has been removed. It never worked in the first
place and fixing it is a low priority right now.
ENHANCEMENTS:
* The version control system within Pinto has been redesigned to be
simpler and faster. It is more Git-like and stores full snapshots
of the stack at each revision (rather than just storing deltas). It
also organizes history into a directed graph and uses unique
non-sequential identifiers for each revision.
* Due to the new version control system, the performance and scalability
of Pinto is much improved. Benchmark tests show that common operations
still perform well with as many as 10,000 commits (I estimate that is 10
years of work). And a Pinto repository can scale to 100,000
distributions with good performance too (that's almost all of CPAN).
* The interface with the terminal has been completely redesigned. You'll
see fewer (but hopefully better) diagnostic messages when running with
--verbose. 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 output of several commands are now colorized to improve
readability. Use the --no-color option or set PINTO_NO_COLOR to disable
color globally.
* If the PINTO_HOME environment variable is set, pinto(1) now adds it to
@INC at startup. The idea here is to make it easier to install pinto as
a stand-alone application. This is experimental.
DOCUMENTATION:
* Documented environment variables in the pinto(1) documentation.
* Added Pinto::Manual::Installing for tips on installing pinto.
0.065_04 2013-03-23 00:18:46 America/Los_Angeles
0.065_03 2013-03-20 15:52:29 America/Los_Angeles
0.065_02 2013-03-19 15:27:54 America/Los_Angeles
0.065_01 2013-03-15 16:06:25 America/Los_Angeles
!! DEVELOPER RELEASES !!
Changes consolidated above under version 0.066.
0.054 2012-11-12 13:22:33 America/Los_Angeles
New Commands:
* The "rename" command allows you to change the name of an
existing stack. Say 'pinto manual rename' for details. This
requires Pinto-0.063 or later.
New Features:
* Commands that support the --message option also now have a
--use-default-message (or -M) option, which causes pinto to use
the default log message that it generates for each command. This
saves you the trouble of having to save and close the default
message in your text editor. Requires Pinto-0.062 or later.
0.053 2012-10-22 12:39:01 America/Los_Angeles
The 'new' and 'copy' commands now have a '--default' option for
setting the default stack at the same time. This is most useful
for setting the default stack after creating a new stack in a
bare repository.
0.052 2012-10-20 00:00:34 America/Los_Angeles
Added the 'blame' command, which shows who was the last person
to modify a package in the stack (by either adding, pinning,
or unpinning it). Requires Pinto-0.059 or later.
Stack names and property names are no longer forced to lower-case.
Instead, the case will be preserved but any lookups or comparisons
will not be case sensitive.
0.051 2012-09-27 13:46:59 America/Los_Angeles
Added the 'replace' command, which substitutes one distribution
for another across all stacks (Contributed by renormalist).
You'll need to upgrade Pinto to use this command.
0.050 2012-09-20 13:19:38 America/Los_Angeles
For the 'list' command, the magic all-stack name has been changed
from '@' to '%'. This was done to distinguish it from revisions,
which look like 'stack@1234'. Requires Pinto-0.055 for
compatibility.
0.049 2012-09-19 22:04:59 America/Los_Angeles
Added --dryrun option to committable commands. This was already
supported by Pinto. It just wasn't offered here in the command
line.
0.048 2012-09-18 16:07:04 America/Los_Angeles
Now requires Pinto-0.52 or newer, if using local repositories.
For remote repositories, App::Pinto should still work with your
current version of Pinto::Remote. However, you'll need to
upgrade Pinto and Pinto::Server on the remote host to use the new
commands (listed below).
Added the 'revert' command, which resores the stack to a revision
of your choosing. See POD for detais.
Added the 'log' command, which shows the changes that have
happened on a stack.
The --dryrun option is available (again) on all commands that
change the state of the repository.
All commands that affect the state of the repository now require
a commit message.
0.047 2012-08-28 15:48:00 America/Los_Angeles
The 'index' command is no longer supported. With the latest
versions of Pinto and Pinto::Server, this command is no longer
useful.
The --dryrun option is only supported on the add, pull, and merge
commands. It didn't make much sense on other commands.
0.045 2012-08-16 11:47:51 America/Los_Angeles
Just documentaiton edits. No code changes.
0.044 2012-08-15 18:25:05 America/Los_Angeles
Added a 'clean' command to force removal of orphaned
archives on the filesystem. See POD for details. You'll
need to have Pinto-0.051 installed locally (or on the server,
if using a remote repository) to use this new command.
0.043 2012-08-14 14:53:41 America/Los_Angeles
Added global options for username and password. These only
matter if using a remote repository that has authentication
enabled.
0.042 2012-05-18 16:37:10 America/Los_Angeles
* Bug Fixes
The init command did not honor the PINTO_REPOSITORY_ROOT
environment variable. Thanks fibo.
0.041 2012-05-15 11:09:56 America/Los_Angeles
First production release. The included pinto utility replaces
both the pinto-admin and pinto-remote utilities. However, you
still have to decide which backend to install (either Pinto or
Pinto::Remote) which ship separately from this distribution.
0.040_02 2012-05-04 15:37:34 America/Los_Angeles
Iniital developer release.