Releases: krep2/krep
Release v0.4 for krep (2019-06-05)
It included the changes on tag CM-0.4 except the improvements and bugfixes on this branch:
Improvements:
- pki: use
FileUtils.last_modified
to get latest modified timestamp - pki: use
FileVersion.cmp
to compare file version strings - pki: provide several static methods for
RepoImportSubcmd
- pki: support more xml elememnts for importing description
- pki: support to apply tag even without changes
- repo: handle option
--offsite
for sync - repo: don't handle the heads like
remotes/m
which was created by git-repo - repo: output upstream attribute when dumping an xml file
- repo: support option
--ignore-new-project
- repo-import: add the new sub-command to import a directory for git-repo project
- subcmds: support option
--head-pattern
and--tag-pattern
- subcmds: support option
--no-thin
for git push
Bugfixes:
- pki: don't use git command in
FileDiff.sync
- pki: update the order for directory sync and wash-out
- pki: don't execute import if target path is inexisted
- pki: update the behaviour for soft-linked files
- pki: secure the behaviour of option
--offsite
- repo: output project name instead of subcommand name
- repo: update the way to indicate a project with its path and revision
- subcmds: correct option name for revision and head
Release v0.4 for branch cm (2019-06-05)
It included the changes on tag BASE-0.4 except the improvements and bugfixes on this branch:
Improvements
- batch: treat exclamation mark as opposite sign like hyphen
- config_file: support XML element
location
andlocations
- file_diff: support opposite match pattern to exclude files
- file_diff: support to exclude cvs/svn/git default meta files
- file_pattern: support opposite pattern for files
- file_utils: add method to get latest modified file/dir timestamp
- file_utils: export
FileVersion
to hanle version strings - file_utils: use characters
.-_
as the delimiters of versions - file_utils: support sync with git commands
- gerrit: support to check if projects are existed on server
- gerrit: support opposite option
--no-gerrit
not to run gerrit commands - gerrit_cmd: split
gerrit.py
to have command class - git_cmd: support subcommad
show-ref
- git_pattern: support pattern category alias for git project heads and tags
- git_project: support pattern for heads and tags to push
- git_project: support
--no-thin
forgit push
command - git_project: support
--date
,--author
and--reference
forgit push
command - git_project: allow to push SHA-1 to a branch (for git-repo static manifest)
- git_project: combine to push several heads or tags together
- manifest: handle notdefault for projects
- manifest: output the generated file to stdout if no file provided
- repo_project: support the class RepoProject
Bugfixes:
- batch: secure the existence of batch file before executing
- file_diff: rollback not to support git command to handle directories
- file_diff: optimize not to use
shutil.rmtree
for links - file_pattern: run pattern rules when it's defined that impacts the default return
- file_utils: use
FileUtils.rmtree
instead ofshutil.rmtree
for patterns - git_project: optimize to handle heads and tags to push
- git_project: update for log debugging
- git_project: don't initialize git repository if it's existed
- manifest: correct the remote prefix for project revision
- subcmd: use 'heads' instead 'branches' as option name
Release v0.4 for branch base (2019-06-05)
As the base of krep
, it includes
Improvements:
- config_file: support args in xml as the hook command arguments
- config_file: support config file in json format
- config_file: support option
--config-file
- config_file: support
value-set
to contain key-value pairs - file_utils: add more methods for file operations
- krep: handle injection options with sub-command as the prefix
- krep: estimate all options with option parser for sub-commands
- options: don't override appending options
- options: support opposite option in xml file
- pattern: evaluate the pattern substitution results
- pattern: support strict match mode
- pattern: support categorize alias to handle the diff in command line
- pattern_file: implement the pattern file with xml format
- subcmd: optimize the usage of config file in xml format
Fixes:
- pattern: secure the escaped characters
- config_file: read config file only once
- config_file: fix the value of
project*.pattern
- option: fix for boolean expression
Release v0.3 for krep (2018-07-24)
It included the changes on tag CM-0.3 except the improvements and bugfixes on this branch:
Improvements:
- git: Support option
--skip-validation
- pki: Optimize the sub-command options
- pki: Optimize the hehaviour with local update (
--offsite
and--local
) - pki: Support variable escape and
\n
with the mesage from command line option - pki: Don't prompt package pattern option with conditions
- repo: Optimize to use one
gerrit
instance to communicate with Gerrit server - repo: Support to provide the XML file from option
- repo: Support to generate XML file or mapping file after repository location mapping
- repo: Support extra-options for
repo init
andrepo create
- repo: Support to count the output project number
- repo: Support option
--skip-validation
Release v0.3 for branch cm (2018-07-24)
It included the changes on tag BASE-0.3 except the improvements and bugfixes on this branch:
Main improvements:
- Gerrit: Support extra-option
gerrit-cp
for the commandgerrit create-project
- Gerrit: Support the override of extra-opiton comparing to option for git repository description
- GitProject: Support to push a consolidated tag for SHA-1, which is useful for
git-repo
project - GitProject: Support subcommand
git show
- GitProject: Adapt with
Gerrit 2.15
with the option--skip-validation
- Batch: Optimize for option functions
Fixed issues:
- GitProject: Fix the judgement pattern of SHA-1
- GitProject: Fix to absorb user name from url like
schema://username@url
- Subcmd: Set verbose correctly for sub-commands
Release v0.3 for branch base (2018-07-24)
As the base of krep
, it starts to support Python 3.x. Within this release, it includes:
Improvements:
- Python: Support both v2.7.x and v3.6.x
- Hook: Support to provide a directory containing hook files and add environment variable
KREP_HOOK_PATH
- Option: Support binary number with the prefix
0b
- Option: Implement extra options for tools used inside sub-commands
- Option: Support
global-option
likeglobal_option
- topics: Support to export Python methods
- SubCmd: Expand
~
as user home directory - Pattern: Support to load XML files containing patterns
- README: many update to
REAME.md
Fixes:
- Command: Fix to normal a command with dash
- Logger: Correct to make logger work well
- Pattern: Lots of fixes to pattern implementations
- krep: Correct
try-run
with the right namedry-run
- topics: Fix the order of importing stuffs
Release v0.2 for branch krep (2018-02-12)
As the first stable release of branch krep
, it included the changes on tag CM-0.2. It provides all functions mentioned in branch base
and cm
, and it provides extra sub-commands to work with git
and git-repo
to operate with the repositories.
It provides five extra sub-commands to guarantee the functions one the branch:
git-p
It implements the function to immigrategit
repositories togit
remotes with speicific handling to thehead
s,tag
s and even the repository name with pattern supported by regex.git-b
It's similar likegit-p
but works with onlygit
bare repositories. Sub-commandgit-p
can also work with bare repositories if the option--bare
is specified.repo
It support to importgit-repo
projects intogit
remotes includinggerrit2
. Specific handling to exclude or renamegit
repositories, exclude or renamegit
heads and tags. And the final updated results can be exported with a newgit-repo
manifest XML file.repo-mirror
It's similar likerepo
but works with onlygit-repo
mirror projects (created with command linerepo init --mirror
). Sub-commandrepo
can also work with mirror projects if the option--mirror
is specified.pki
It supports to import a package file or source directories intogit
repository with many options. Extra options are provided to wash out the source directories before actual push.
More details can refer to README.md
and project wiki.
Release v0.2 for branch cm (2018-02-11)
It included the changes on tag BASE-0.2 except the improvements and bugfixes on this branch:
Main improvements:
- FileDiff: Quick file update with
git add --all
- FileWasher: Detect the file type with executable
file
if noimage
library installed - Manifest: Don't raise exception for
remove-project
with nonexistent projects - Manifest: Dump
copyfile
andlinkfile
when storing XML files
Fixed issues:
- GitProject: Assume the default scheme as
git://
- GitProject: Handle the specified contents of returned branches
- GitProject: Don't push SHA-1 to the remote securely
- FileUtils: Handle the file extensions of compressed packages in order
- Manifest: Return the right project remote attribute in XML files
- Option: Correct the options for each projects executed by
batch
Release v0.2 for branch base (2018-02-11)
As the base of krep
, this release includes:
Improvements:
- Add
synchronize
annotation formethod
- Add hook support for
subcmd
- Support environ for commands
- Support bin/hex for option numbers
- Enhance the function of
pattern
class - Support
--not-
like--no
as the prefix of options - Support continuous pattern if expected
- Support more flexible format for plain-text file
Fixed Issues:
- Secure the link or file to remove
- Keep the correct usage of saved default options
- Correct the logger name for each thread/running job