
1.3.3 | 2018-02-15 11:04:09 -0600

  * Release 1.3.3.

1.3.2-1 | 2018-02-15 11:02:20 -0600

  * GH-26: fix error when config_file is not in script_dir or plugin_dir
    (Corelight)

1.3.2 | 2018-02-01 17:38:15 -0600

  * Release 1.3.2.

1.3.1-5 | 2018-02-01 17:37:34 -0600

  * Improve logging stream levels for a couple log messages (Corelight)

  * Change default confirmation prompt answer to 'no' on test failures
    (Corelight)

1.3.1-3 | 2018-02-01 17:17:54 -0600

  * Minor doc improvements (Corelight)

1.3.1-2 | 2018-02-01 16:13:25 -0600

  * Teach bro-pkg to emit an error when operating on dirty git clones

    When trying to use the install, test, or bundle commands on local git
    clones that have modifications or untracked files, bro-pkg now aborts
    with an error message.  This is to help catch situations where one
    thinks their uncommitted local changes will be installed by bro-pkg, but
    actually will not be unless they are committed in the git repo. (Corelight)

1.3.1-1 | 2018-02-01 15:43:19 -0600

  * Fix install command to be able to re-install an existing package

    Before, using 'install' on a previously-installed package would not
    correctly update the cached git repository so if there were any changes
    since the last installation they would not be seen after the operation
    completed. (Corelight)

1.3.1 | 2017-12-07 19:33:23 -0600

  * Release 1.3.1.

1.3-1 | 2017-12-07 19:29:35 -0600

  * GH-22: fix 'suggests' field in json output to use key-value pairs
    (Corelight)

1.3 | 2017-11-28 19:34:15 -0600

  * Release 1.3.

1.2.6-2 | 2017-11-28 19:29:38 -0600

  * GH-22: add a 'suggests' metadata field

    This new field can be used in the same way as 'depends', but is used for
    packages that are merely complementary and not strictly required for the
    suggesting package to function.

    A "(suggested)" indicator for install, bundle, and upgrade commands will
    now appear during their bro-pkg confirmation prompts.  These commands
    also now have a --nosuggestions flag to ignore all suggested packages.

    This changes the bropkg.manager.validate_dependencies() API to return
    an additional boolean indicating whether a package was included in the
    list as a result of suggestions. (Corelight)

1.2.6-1 | 2017-11-27 09:46:02 -0600

  * GH-24: improve script_dir metadata field documentation (Corelight)

1.2.6 | 2017-11-23 15:27:46 -0600

  * Release 1.2.6.

1.2.5-1 | 2017-11-23 15:27:12 -0600

  * GH-23: more "Edit on GitHub" breadcrumb customization. (Corelight)

1.2.5 | 2017-11-23 14:42:33 -0600

  * Release 1.2.5.

1.2.4-1 | 2017-11-23 14:41:09 -0600

  * GH-23: one more "Edit on GitHub" link fix attempt. (Corelight)

1.2.4 | 2017-11-23 13:57:00 -0600

  * Release 1.2.4.

1.2.3-1 | 2017-11-23 13:54:11 -0600

  * GH-23: another attempt to remove "Edit on GitHub" link. (Corelight)

1.2.3 | 2017-11-23 13:29:07 -0600

  * Release 1.2.3.

1.2.2-2 | 2017-11-23 13:28:15 -0600

  * GH-23: remove broken "Edit on GitHub" link from stable version of docs.
    (Corelight)

1.2.2-1 | 2017-11-23 13:27:06 -0600

  * Add a missing dependency for building docs. (Corelight)

1.2.2 | 2017-10-16 16:14:02 -0500

  * Release 1.2.2.

1.2.1-1 | 2017-10-16 16:11:37 -0500

  * GH-21: again trying to give aggregate metadata consistent ordering
    (Jon Siwek)

1.2.1 | 2017-10-11 15:03:56 -0500

  * Release 1.2.1.

1.2-1 | 2017-10-11 15:02:21 -0500

  * Fix building PyPI distribution from Python 3+

    It should now still include the configparser backport dependency.
    (Jon Siwek)

1.2 | 2017-09-29 13:15:37 -0500

  * Release 1.2.

1.1-1 | 2017-09-29 13:15:00 -0500

  * BIT-1852: allow 'bro-pkg' as a 'depends' field value

    This allows packages to depend on new features of bro-pkg not available
    in previous version. (Jon Siwek)

1.1 | 2017-09-28 18:46:30 -0500

  * Release 1.1.

1.0.4-32 | 2017-09-28 18:45:54 -0500

  * BIT-1852: allow plugin_dir to also accept tarfiles

    This allows packagers to specify a tarfile containing the Bro plugin
    instead of a directory.  May be useful as the default Bro plugin
    CMake skeleton will end up producing a tarfile as part of the plugin
    build process that contains the minimal set of files comprising the
    plugin. (Jon Siwek)

1.0.4-31 | 2017-09-28 16:16:39 -0500

  * GH-9: add new 'user_vars' bro-pkg.meta field and config file section

    This field allows for packages to solicit users for extra configuration
    settings which may then be referenced in that package's build_command.
    Useful for asking users for installation paths of external dependencies,
    which may differ between users/systems. (Jon Siwek)

1.0.4-30 | 2017-09-27 11:14:52 -0500

  * GH-9: show 'external_depends' metadata during 'unbundle' command (Jon Siwek)

  * Add manager.bundle_info() to API.

    It retrieves information on all packages in a bundle without installing
    the bundle. (Jon Siwek)

1.0.4-28 | 2017-09-27 10:14:16 -0500

  * Remove an error msg when upgrading packages that have no test_command
    (Jon Siwek)

1.0.4-27 | 2017-09-26 13:27:53 -0500

  * GH-9: allow 'external_depends' field in bro-pkg.meta.

    The contents of this field get displayed to users in the install
    and upgrade commands to indicate extra pre-requisite software their
    OS should have installed. (Jon Siwek)

1.0.4-26 | 2017-09-26 11:41:37 -0500

  * Put install's "unit test skipped" msg into log stream instead of stdout.
    (Jon Siwek)

1.0.4-25 | 2017-09-22 12:26:56 -0500

  * GH-15: add --nodeps to install, bundle, and upgrade commands

    This option allows to bypasses dependency resolution/checking,
    accepting risk of causing broken/unusable package state. (Jon Siwek)

1.0.4-24 | 2017-09-20 13:11:48 -0500

  * Code formatting. (Jon Siwek)

1.0.4-23 | 2017-09-20 13:07:57 -0500

  * Add '--allvers' option to output metadata for ALL versions when
    outputting JSON. (Terry Fleury)

  * Add JSON output as option to 'info' command. (Terry Fleury)

1.0.4-18 | 2017-09-20 12:52:17 -0500

  * Add 'info' option to force read metadata from remote GitHub. (Terry Fleury)

1.0.4-16 | 2017-09-20 12:39:21 -0500

  * Version numbers should be sorted naturally, e.g., 1.10.0 is newer
    than 1.9.0. (Justin Azoff, Terry Fleury)

1.0.4-14 | 2017-09-20 12:31:59 -0500

  * Add option for 'list' command '--nodesc' to suppress description output.
    (Terry Fleury)

1.0.4-12 | 2017-09-16 13:36:53 -0500

  * GH-13: emit an error when a package uses a malformed 'depends' field
    (Jon Siwek)

1.0.4-11 | 2017-09-16 12:44:50 -0500

  * Fix a typo in an error message. (Jon Siwek)

1.0.4-10 | 2017-09-15 13:04:46 -0500

  * GH-12: use active branch as package version for local git repos (Jon Siwek)

1.0.4-9 | 2017-09-15 11:47:09 -0500

  * GH-10: add a cross-reference for metadata value interpolation in docs
    (Jon Siwek)

1.0.4-8 | 2017-09-15 11:39:24 -0500

  * GH-10: improve docs regarding metadata value interpolation (Jon Siwek)

1.0.4-6 | 2017-09-14 19:52:21 -0500

  * Minor quickstart doc simplification. (Jon Siwek)

1.0.4-5 | 2017-09-14 18:56:16 -0500

  * Require extra configparser package only for Python < 3.5 
    where it is not included (Hilko Bengen)

  * Fix imports for python3 (Robert Haist)

1.0.4-2 | 2017-09-14 15:05:36 -0500

  * Add a docutils config file to prevent sphinx/smartypants "smart quotes"

    Without it, later versions of sphinx are turning quote characters into
    smart/curly quotes which breaks the generated man page. (Jon Siwek)

1.0.4-1 | 2017-09-14 15:03:04 -0500

  * Quickstart doc improvements, add missing links to dependencies (Jon Siwek)

1.0.4 | 2017-07-18 11:41:56 -0500

  * Release 1.0.4.

1.0.3-1 | 2017-07-18 11:39:38 -0500

  * Give aggregate metadata file a consistent ordering

    Addresses https://github.com/bro/package-manager/issues/6 (Jon Siwek)

1.0.3 | 2017-06-23 10:17:26 -0500

  * Release 1.0.3.

1.0.2-3 | 2017-06-23 10:15:41 -0500

  * Install command now doesn't warn/prompt when package has no test_command.
    (Jon Siwek)

  * Fix a unit test. (Jon Siwek)

  * Improve usage documentation: add offline usage example. (Jon Siwek)

1.0.2 | 2017-06-07 22:11:20 -0500

  * Release 1.0.2.

1.0.1-1 | 2017-06-07 22:04:55 -0500

  * Improve confirmation prompt behavior.

    Just pressing enter defaults to "yes" and anything besides y/ye/yes
    (case insensitive) is treated as "no" and aborts.

    Addresses https://github.com/bro/package-manager/issues/5 (Jon Siwek)

1.0.1 | 2017-06-05 09:54:59 -0500

  * Release 1.0.1.

1.0-3 | 2017-06-05 09:54:31 -0500

  * Improved handling of packages without scripts.

    The 'load' and 'unload' commands now return more precise messages if
    used for packages without scripts. (Jan Grashoefer)

1.0-1 | 2017-02-06 21:02:31 -0600

  * Return a proper "bro-config not found" message when running tests.
    (Jon Siwek)

1.0 | 2017-01-24 19:53:49 -0600

  * Release 1.0.

0.9-24 | 2017-01-24 19:53:27 -0600

  * Simply directions for uploading to PyPi. (Jon Siwek)

0.9-23 | 2017-01-24 19:41:22 -0600

  * Add dependency on btest. (Jon Siwek)

0.9-22 | 2017-01-24 18:09:28 -0600

  * Change manager.validate_dependencies API (Jon Siwek)

0.9-21 | 2017-01-21 12:40:09 -0600

  * Doc fixes. (Jon Siwek)

0.9-20 | 2017-01-21 12:29:48 -0600

  * Run package tests before install/upgrade. (Jon Siwek)

  * Add 'test' command and 'test_command' metadata field. (Jon Siwek)

0.9-16 | 2017-01-13 18:50:52 -0600

  * Fix non-deterministic order of {installed,loaded}_packages() (Jon Siwek)

  * Add unit tests. (Jon Siwek)

  * Fix bundle/unbundle --help output. (Jon Siwek)

  * Don't copy a package's .git or bro-pkg.meta when installing them.
    (Jon Siwek)

0.9-8 | 2017-01-12 10:23:26 -0600

  * Add 'depends' bro-pkg.meta field. (Jon Siwek)

  * Teach install/upgrade/bundle commands to operate on package dependencies.

    These commands now construct a dependency graph based on the packages
    the user has requested plus any already-installed packages and then
    validates the graph to make sure there are no dependency conflicts.

    If there are no conflicts, then the set of requested packages get
    installed/bundled along with any additional packages that were required
    to satisfy dependencies.  For those additional packages, bro-pkg always
    tries to pick the latest release version that satisfies all dependency
    specifications. (Jon Siwek)

0.9-2 | 2017-01-09 11:16:43 -0600

  * Improve 'info' output for packages w/ empty metadata files. (Jon Siwek)

0.9-1 | 2016-12-09 11:52:23 -0600

  * Fix doc typo. (Jon Siwek)

0.9 | 2016-12-08 21:19:02 -0600

  * Release 0.9.

0.8-6 | 2016-12-08 21:15:06 -0600

  * Fix tracking package versions/changes via branches.

    A previous change to use shallow git clones broke the tracking of
    package versioning via git branches. (Jon Siwek)

0.8-5 | 2016-12-08 20:04:53 -0600

  * Fix bundle/unbundle automatic lower-casing of urls in bundle manifest
    (Jon Siwek)

0.8-4 | 2016-12-08 19:50:49 -0600

  * Add new bro-pkg.meta field: config_files

    This allows package authors to specify a list of files that users may
    directly modify.  The upgrade, remove, install, and bundle operations
    all work in a way that attempts to either preserve a user's local
    changes or save a backup of their version. (Jon Siwek)

0.8-3 | 2016-12-07 22:54:49 -0600

  * BIT-1768: improve handling of packages that have no Bro scripts (Jon Siwek)

0.8-2 | 2016-12-07 20:46:44 -0600

  * BIT-1766: add tags() and short_description() to PackageInfo API (Jon Siwek)

0.8-1 | 2016-12-07 20:09:58 -0600

  * BIT-1767: improve handling of non-ascii character encoding (Jon Siwek)

0.8 | 2016-11-29 11:21:29 -0600

  * Release 0.8.

0.7-19 | 2016-11-29 11:19:17 -0600
  * Improve output of info command and allow offline usage. (Jon Siwek)

  * Update documentation related to metadata aggregation. (Jon Siwek)

  * Metadata aggregation changes:

    - bro-pkg.index is now expected to be a simple list of package urls

    - add --aggregate flag to refresh command that will crawl packages and
      aggregate their metadata into an aggregate.meta file within local
      package source clones

    - add --sources flag to refresh command to explicitly specify operation
      on a specific set of package sources

    - add --push flag to refresh command to push local package source
      aggregate.meta changes to the remote repo (Jon Siwek)

0.7-10 | 2016-11-21 18:04:08 -0600

  * Package versioning doc improvements. (Jon Siwek)

0.7-9 | 2016-11-21 12:15:14 -0600

  * Update docs regarding package versioning. (Jon Siwek)

0.7-8 | 2016-10-21 10:13:16 -0500

  * Using shutil.move instead of os.rename, which works across file systems.
    (Robin Sommer)

0.7-6 | 2016-10-11 18:54:50 -0500

  * BIT-1725: allow bundling on offline machines

    When requesting to bundle the set of installed packages, they
    are directly copied into the bundle instead of trying to clone
    from the remote git repo. (Jon Siwek)

0.7-5 | 2016-10-04 14:05:50 -0500

  * BIT-1713: in python3, show usage info when bro-pkg is given no args
    (Jon siwek)

0.7-4 | 2016-10-03 18:20:57 -0500

  * BIT-1716: do shallow git clones of packages to use less space (Jon Siwek)

0.7-3 | 2016-10-03 17:08:31 -0500

  * BIT-1715: improve message when failing to clone a package source

    And make that situation a warning instead of a fatal error. (Jon Siwek)

0.7-2 | 2016-10-03 16:49:24 -0500

  * Allow empty values for paths in config file. (Jon Siwek)

0.7-1 | 2016-10-03 15:55:00 -0500

  * BIT-1714: expand '~' and env. vars in config file values.

    And reject relative paths in [paths] section. (Jon Siwek)

0.7 | 2016-09-29 15:26:14 -0500

  * Release 0.7.

0.6-14 | 2016-09-29 15:25:44 -0500

  * Improve output of 'info' command. (Jon Siwek)

0.6-13 | 2016-09-29 14:59:31 -0500

  * Tweak output of bundle/unbundle. (Jon Siwek)

0.6-12 | 2016-09-29 14:43:11 -0500

  * Python 3 compatibility fixes. (Jon Siwek)

0.6-11 | 2016-09-28 18:11:44 -0500

  * Add 'bundle' and 'unbundle' commands. (Jon Siwek)

0.6-10 | 2016-09-27 13:56:08 -0500

  * Fix potential race condition in package installation. (Jon Siwek)

0.6-9 | 2016-09-26 15:31:50 -0500

  * Improve formatting of package short descriptions. (Jon Siwek)

0.6-8 | 2016-09-26 15:15:18 -0500

  * BIT-1699: improve package validation and format of output. (Jon Siwek)

0.6-7 | 2016-09-26 13:40:26 -0500

  * Add a 'purge' command that removes all installed packages. (Jon Siwek)

0.6-6 | 2016-09-21 12:59:01 -0500

  * BIT-1699: Add --force flag for install/remove/upgrade. (Jon Siwek)

0.6-5 | 2016-09-21 12:22:18 -0500

  * BIT-1699: Add confirmation prompts for install/upgrade/remove.

    Removed the --all flag for upgrade command. (Jon Siwek)

0.6-4 | 2016-09-21 10:47:53 -0500

  * BIT-1697: Improve output format of list/search. (Jon Siwek)

0.6-3 | 2016-09-19 13:29:27 -0500

  * BIT-1698: autoconfig command now directly writes to config file.
    (Jon Siwek)

0.6-2 | 2016-09-19 12:09:52 -0500

  * BIT-1697: Add description field to list/search output. (Jon Siwek)

0.6-1 | 2016-09-19 10:52:51 -0500

  * BIT-1701: Improve error message when 'install' can't create symlink.
    (Jon Siwek)

0.6 | 2016-09-14 15:16:30 -0500

  * Release 0.6.

0.5-2 | 2016-09-14 15:15:50 -0500

  * Improve docs for script_dir/plugin_dir config file options. (Jon Siwek)

0.5-1 | 2016-09-14 15:09:12 -0500

  * Improve automatic relocation of script_dir.  (Jon Siwek)

0.5 | 2016-09-05 15:03:14 -0500

  * Release 0.5.

0.4-2 | 2016-09-05 15:01:38 -0500

  * Improve error message for insufficient permissions (Jon Siwek)

0.4-1 | 2016-09-05 14:09:55 -0500

  * Improve output of 'info' command. (Jon Siwek)

0.4 | 2016-08-16 16:55:48 -0500

  * Release 0.4.

0.3-4 | 2016-08-16 16:55:20 -0500

  * Docs: add 'autoconfig' command (Jon Siwek)

0.3-3 | 2016-08-16 16:10:21 -0500

  * Add 'autoconfig' command, remove 'bro_exe' option.

    bro-pkg can now use bro-config to automatically determine paths.
    (Jon Siwek)

0.3-2 | 2016-08-15 13:32:18 -0500

  * Docs: clarifications (Jon Siwek)

0.3-1 | 2016-08-12 16:20:30 -0500

  * Docs: add bro.org link in README (Jon Siwek)

0.3 | 2016-08-12 15:54:18 -0500

  * Release 0.3.

0.2-47 | 2016-08-12 15:53:13 -0500

  * Docs: add versioning/release guide for developers (Jon Siwek)

0.2-46 | 2016-08-11 19:45:21 -0500

  * setup.py packaging improvements (Jon Siwek)

0.2-45 | 2016-08-11 14:35:06 -0500

  * Docs: fix sphinx-argparse 'nosubcommands' option (Jon Siwek)

0.2-44 | 2016-08-11 14:16:22 -0500

  * Docs: adjust admonitions in README (Jon Siwek)

0.2-43 | 2016-08-11 14:09:44 -0500

  * Docs: organize external links (Jon Siwek)

0.2-42 | 2016-08-10 19:58:15 -0500

  * Fix `list all` to show installed packages that don't come from a source
    (Jon Siwek)

0.2-41 | 2016-08-10 19:35:53 -0500

  * Docs: add package creation walkthroughs (Jon Siwek)

  * Don't load packages unless they have a __load__.bro (Jon Siwek)

  * Improve handling of relative paths in package urls (Jon Siwek)

0.2-38 | 2016-08-10 14:29:30 -0500

  * Teach search command to inspect package index tags (Jon Siwek)

0.2-37 | 2016-08-09 18:55:30 -0500

  * Delay printing installation activity ticks. (Jon Siwek)

0.2-36 | 2016-08-09 18:41:54 -0500

  * Change package sources to use index files instead of git submodules.
    (Jon Siwek)

0.2-35 | 2016-08-09 13:54:46 -0500

  * Install packages in a thread.

    So it doesn't look like bro-pkg is hanging when installing a package
    that has to be built. (Jon Siwek)

0.2-34 | 2016-08-09 13:06:24 -0500

  * Using ``install --version`` now also pins the package. (Jon Siwek)

0.2-33 | 2016-08-08 16:19:59 -0500

  * info command can now take a --version flag. (Jon Siwek)

0.2-32 | 2016-08-08 15:16:54 -0500

  * Fix install command to use the right version of bro-pkg.meta. (Jon Siwek)

0.2-31 | 2016-08-08 12:47:02 -0500

  * Change config/metadata file option names. (Jon Siwek)

    bro-pkg.meta:
        scriptpath -> script_dir
        pluginpath -> plugin_dir
        buildcmd   -> build_command

    bro-pkg config file:
        statedir  -> state_dir
        scriptdir -> script_dir
        plugindir -> plugin_dir

0.2-30 | 2016-08-07 13:45:00 -0500

  * Rename pkg.meta to bro-pkg.meta. (Jon Siwek)

0.2-29 | 2016-08-07 13:08:00 -0500

  * upgrade command: require --all when omitting package list. (Jon Siwek)

0.2-28 | 2016-08-07 12:51:20 -0500

  * Docs: adjust bro-pkg --help output. (Jon Siwek)

0.2-27 | 2016-08-07 12:35:40 -0500

  * Add warnings to not directly modify certain files/dirs. (Jon Siwek)

0.2-26 | 2016-08-07 12:05:40 -0500

  * Docs: show actual version in sidebar. (Jon Siwek)

0.2-25 | 2016-08-06 15:08:12 -0500

  * Docs: don't restrict argparse-generated table widths. (Jon Siwek)

  * Docs: misc. style fixes and clarifications. (Jon Siwek)

  * Docs: switch theme (again) to Read the Docs theme.

0.2-22 | 2016-08-06 13:12:26 -0500

  * Docs: clarifications, organization, style. (Jon Siwek)

0.2-21 | 2016-08-05 13:41:47 -0500

  * Docs: change theme. (Jon Siwek)

  * Docs: GitPython and semantic_version build requirements (Jon Siwek)

0.2-19 | 2016-08-04 13:25:48 -0500

  * Docs: add requirements file (Jon Siwek)

0.2-18 | 2016-08-03 16:10:18 -0500

  * Docs: fix Sphinx argparse extension to check for outdated modules.

    Sphinx itself should now always be able to determine whether the
    command-line bro-pkg documentation needs to be rebuilt. (Jon Siwek)

0.2-17 | 2016-08-02 14:46:16 -0500

  * Docs: rebuild docs on version string change. (Jon Siwek)

0.2-16 | 2016-08-02 14:34:49 -0500

  * Docs: give each bro-pkg command its own section (Jon Siwek)

0.2-15 | 2016-08-01 14:34:06 -0500

  * Documentation organization/layout/theming. (Jon Siwek)

0.2-14 | 2016-07-24 14:55:28 -0500

  * Clarification to installation doc. (Jon Siwek)

0.2-13 | 2016-07-24 12:18:40 -0500

  * Add a 'gh-pages' Makefile target. (Jon Siwek)

  * Add .nojekyll file to built sphinx docs. (Jon Siwek)

0.2-11 | 2016-07-23 15:32:24 -0500

  * Add installation/setup docs. (Jon Siwek)

0.2-10 | 2016-07-23 14:19:09 -0500

  * Add a prebuilt man page. (Jon Siwek)

0.2-9 | 2016-07-22 15:07:57 -0500

  * Change bro-pkg to not require a config file and add setup.py. (Jon Siwek)

0.2-8 | 2016-07-21 12:14:53 -0500

  * Improve speed of checking for changed remote package sources. (Jon Siwek)

  * Improve how 'info' command locates packages. (Jon Siwek)

  * Emit an error when package has non-existant 'scriptpath'. (Jon Siwek)

  * Documentation clarifications. (Jon Siwek)

0.2-4 | 2016-07-21 09:49:15 -0500

  * Make output of 'info' command have a stable order. (Jon Siwek)

0.2-3 | 2016-07-21 09:44:42 -0500

  * Python3 compatibility fixes. (Jon Siwek)

0.2-2 | 2016-07-20 14:35:38 -0500

  * Documentation and other clean up.

    Sphinx is used docs: manual, api reference, man page. (Jon Siwek)

0.2-1 | 2016-07-14 12:26:56 -0500

  * Fix a mistake in --help output. (Jon Siwek)

0.2 | 2016-07-14 10:51:11 -0500

  * Release 0.2.
