Changelogs » Libvcs

PyUp Safety actively tracks 274,040 Python packages for vulnerabilities and notifies you when to upgrade.

Libvcs

0.5

- [refactor] [267] overhaul docs
  
  - Move sphinx api format to Numpy-style
  
  - Move from reStructuredText to Markdown (via recommonmark). The master plan is to eliminate
  docutils and sphinx as a bottleneck completely in favor of something else (e.g. gatsby with
  a source that inspects our modules and can source intersphinx)
  
  - Move from RTD to GitHub Action, full support of poetry extras packages, deploys straight to
  S3 and CloudFront
  - [270] Build and publish packages via poetry
  - [270] Overhaul development docs
  
  [270]: https://github.com/vcs-python/libvcs/pull/270
  [267]: https://github.com/vcs-python/libvcs/pull/267

0.4.4

- [268] `libvcs.base.BaseRepo`:
  - no longer sets `**kwargs` to dictionary on the object
  - remove `__slot__` and rename `name` attribute to `repo_name`
  
  [268]: https://github.com/vcs-python/libvcs/pull/268

0.4.3

- \[bug\] `libvcs.git.extract_status()` Fix issue capturing branch
  names with special characters

0.4.2

- \[bug\] `libvcs.git.GitRepo.get_current_remote_name()` Handle case
  where upstream is unpushed
  - \[feature\] `libvcs.git.GitRepo.status()` - Retrieve status of repo
  - \[feature\] `libvcs.git.extract_status()` - Return structured info
  from `git status`

0.4.1

- Remove log statement

0.4

**Breaking changes**
  
  Internal functionality relating to remotes have been reorganized to
  avoid implicit behavior.
  
  - `~libvcs.git.GitRepo` methods have been renamed, they will be
  deprecated in 0.5:
  
  - `GitRepo.remotes_get` renamed to `libvcs.git.GitRepo.remotes()`
  - `GitRepo.remote_get` renamed to `libvcs.git.GitRepo.remote()`
  - `GitRepo.remote_set` renamed to
  `libvcs.git.GitRepo.set_remote()`
  
  - `~libvcs.git.GitRepo` the `remotes` argument is deprecated and no
  longer used. Use `libvcs.git.GitRepo.set_remote` after repo is
  instantiated.
  
  - `libvcs.git.GitRepo.obtain` no longer set remotes based on a `dict`
  passed to `~libvcs.git.GitRepo`. This was deemed to specialized /
  implicit.
  
  - `libvcs.git.GitRepo.set_remote()` (formerly `remote_set`)
  
  The new method accepts `name` and `url` (in that order). `name` no
  longer has a default value (was `origin`).
  
  - `libvcs.git.GitRepo.remote()` (formerly `remote_get`):
  
  - `remote` argument renamed to `name`. It will be removed in 0.5.0
  
  The default value of `'origin'` has been removed
  
  - Now returns `~libvcs.git.GitRemote` (a
  :py`collections.namedtuple` object)
  
  The tuple is similar to the old output, except there is an
  additional value at the beginning, the name of the remote, e.g.
  `('origin', '<fetch_url>', '<push_url>')`
  
  - `libvcs.git.GitRepo.remotes()` (formerly `remotes_get`) are now
  methods instead of properties.
  
  Passing `flat=True` to return a `dict` of `tuple` instead of `dict`
  
  - New method: `libvcs.git.GitRepo.get_git_version()`
  
  - New method: `libvcs.git.GitRepo.get_current_remote_name()`

0.3.3

- Remove f-string from test
  - `libvcs.git.GitRepo.obtain` Overwrite remote if exists

0.3.2

- `258` `libvcs.git.GitRepo.remote_set`
  - Fix updating of remote URLs
  - Add new param: `overwrite`, usage:
  `repo.remote_set(url, 'origin', overwrite=True)`

0.3.1post1

- Fix version in pyroject.toml
  - Update developer docs

0.3.1

- Fix issue with subprocess.Popen loud warning on Python 3.8
  - [296] - Move from Pipfile to poetry
  - Sort imports
  - Add isort package, isort configuration in setup.cfg, and
  `make isort` task to Makefile.
  - Add `project_urls` to setup.py
  
  [296] https://github.com/vcs-python/libvcs/pull/296

0.3.0

- Move vcspull to the vcs-python organization
  - Fix issue where VCS objects failed to set attribute in Ubuntu 18.04.

0.2.3

- Update documentation to point to libvcs.git-pull.com
  - Switch doc theme to alabaster
  - Pin and update libraries via pyup
  - update vulture 0.8.1 to 0.11
  - update flake8 from 2.5.4 to 3.2.1
  - update pytest-mock from 1.4.0 to 1.5.0
  - update pytest from 3.0.4 to 3.0.5
  - pin alabaster to 0.7.9
  - pin sphinx to 1.5.1

0.2.2

- Fix bug with unused `support` module in vcspull. See [vcspull43]
  
  [vcspull43]: https://github.com/vcs-python/vcspull/pull/43

0.2.1

- Update pytest to 3.0.2, remove unused pytest-raisesregexp
  dependency.
  - Fix bug in `which` when executable is not found. Allow specifying
  search paths manually.
  - Better support for missing VCS when testing on git and subversion.

0.2.0

- [9] Support for `progress_callback` to use realtime output from
  commands in progress (such as `git fetch`).
  - [9] More tests, internal factoring and documentation, thanks jcfr
  - [9] Official support for pypy, pypy3
  - [11] : Fix unbound local when updating git repos
  
  [9]: https://github.com/vcs-python/libvcs/pull/9
  [11]: https://github.com/vcs-python/libvcs/pull/11

0.1.7

- `7` Add `check_returncode` property to run, thanks jcfr
  - `8` Remove all cases of `run_buffered` / buffering from the library.

0.1.6

- `5` Remove colorama dependency
  
  - `6` Remove log module. Logging defaults.
  
  The library user can still use formatters and set log levels, for an
  example, see the vcspull logging setup.
  
  An example:
  
  import logging
  
  your app
  log.setLevel(level)
  log.addHandler(logging.StreamHandler())
  
  vcslib logging options
  vcslogger = logging.getLogger('libvcs')
  vcslogger.propagate = False  don't pass libvcs settings up scope
  vcslogger.addHandler(logging.StreamHandler())
  vcslogger.setLevel(level)
  
  You can also use `logging.Formatter` variables `repo_name` and
  `repo_vcs` with repos:
  
  repo_channel = logging.StreamHandler()
  repo_formatter = logging.Formatter(
  '[%(repo_name)s] (%(repo_vcs)s) %(levelname)1.1s: %(message)s'
  )
  repo_channel.setFormatter(repo_formatter)
  vcslogger = logging.getLogger('libvcs')
  vcslogger.propagate = False  don't pass libvcs settings up scope
  vcslogger.addHandler(repo_channel)
  vcslogger.setLevel(level)

0.1.5

- Fix issue where repo context wouldn't pass to repo logging adapter

0.1.4

- Fix print\_stdout\_on\_progress\_end signature in git update

0.1.3

- `create_repo` function for regular vcs urls
  - API docs updated

0.1.2

- change signature on `create_repo_from_pip_url` to accept `pip_url`
  insetad of `url`.
  - `Base` to accept `repo_dir` instead of `name` and `parent_dir`.

0.1.1

- remove unneeded pyyaml, kaptan and click dependencies

0.1.0

- libvcs split from [vcspull](https://github.com/vcs-python/vcspull)