From 4f3dd68f32b4ac516b57ff5da7aa485ebfb37a72 Mon Sep 17 00:00:00 2001 From: Chenxiong Qi Date: Jul 23 2018 13:07:25 +0000 Subject: 1.55 Release This is the first release to use new documentation site to publish release notes. CHANGELOGS.rst is updated to point out the link and existing releases are moved to separate release notes page. Signed-off-by: Chenxiong Qi --- diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 18bc857..0165920 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,233 +1,4 @@ ChangeLog ========= -1.54 (2018-05-09) ------------------ - -- Pass the -s/--set-default-stream to mbs-manager for module local builds. - (jkaluza) -- Write mock config correctly when run in Py 3 (cqi) -- Add --with and --without options to 'local' - rhbz#1533416 (tmz) -- Add a test for 3f93433 (cqi) -- Raise error if rpm command returns non-zero (cqi) -- Use getpass.getuser() instead of pwd.getpwuid(os.getuid())[0] (jpopelka) -- Allow setting custom MBS config file and config section in rpkg.conf. - (jkaluza) -- Remove py35 testenv (cqi) -- Ignore .env and tags (cqi) -- Remove question mark from giturl (cqi) -- Added custom ArgumentParser (supports allow_abbrev) (jkucera) -- Grab the correct first line in case of rpm output (zebob.m) - -1.53 (2018-04-08) ------------------ - -- Use NSVs and not build IDs with module-build-local --add-local-build (mprahl) -- Fix docstring of test_module_build_local_with_skiptests (mprahl) -- Add long_description to package (cqi) -- Support local module builds when there are uncommitted changes (mprahl) -- Fix clarifying error that occurs when mbs-manager is not installed (mprahl) -- Add support for Module Stream Expansion (MBS API v2) (mprahl) -- Show errors when a module build fails (mprahl) -- Move full download url construction to separate method (frostyx) -- Fix compose related params for container-build (lucarval) -- Avoid calling /usr/bin/python in tests (miro) -- Change default rpmlint configuration file (athoscr) -- Use koji.grab_session_options() rather than opencoding it (cfergeau) - -1.52 (2018-02-14) ------------------ - -- Mock ThreadPool in test_module_overview (cqi) -- Drop rpmfluff in test (cqi) -- Fix hardcoded directory name in test (lsedlar) -- Improve testenv for py26 (cqi) -- Run tests with old GitPython in py26 testenv (cqi) -- Compile pycurl with openssl after F27 (cqi) -- Ignore .egg/ from git (cqi) -- Add py26 to testenv (cqi) -- Install koji from PyPI (cqi) -- Make compose-id and repo-url to take one or more values (csomh) -- Let git ignore more directories (cqi) -- Exclude pyc and __pycache__ globally in sdist (cqi) -- Handle nonexisting mbs-manager (cqi) -- Add dependent packages for Python 2.6 in setup.py (cqi) -- Updated module cli API (mcurlej) -- Declare Python versions rpkg can work with - #278 (cqi) -- Fix flake8 errors (cqi) -- Fix tests that do not work with Python 3 (cqi) -- Fix tests: not impact by dict.items call (cqi) -- Add py36 to testenv - #274 (cqi) -- Run tox to run tests and check code styles - #276 (cqi) -- Use flake8 3.5.0 (cqi) -- Add files under requirements/ to sdist package (cqi) -- Install Koji shared library via setuptools (cqi) -- Set install and tests requires in setup.py (cqi) -- Split pypi requirements and refine versions (cqi) -- Change type of compose id from string to int (bfontecc) -- Install RPM Python binding from PyPI (cqi) -- Fix test test_lint_each_file_once (cqi) -- Add compose-id and signing-intent arguments (bfontecc) -- Use env's python (lucarval) -- Use progress callback and TaskWatcher from koji_cli.lib (cqi) -- Get buildhash from git+https:// url (lsedlar) -- lint: Avoid checking rpm's multiple times (tmz) -- Fix giturl as well by calling construct_build_url (cqi) -- Fix construct anongiturl for chain-build (cqi) -- Fix mock openidc_client (cqi) - -1.51 (2017-10-20) ------------------ - -- Do not read real koji config in test (cqi) -- Ignore TestModulesCli if openidc-client is unavailable (cqi) -- Port mbs-build to rpkg (mprahl) -- Add .vscode to .gitignore (mprahl) -- Fix TestPatch.test_rediff in order to run with old version of mock (cqi) -- Allow to specify alternative Copr config file - #184 (cqi) -- Tests for patch command (cqi) -- More Tests for mockbuild command (cqi) -- More tests for getting spec file (cqi) -- Tests for container-build-setup command (cqi) -- Test for container-build to use custom config (cqi) -- Suppress output from git command within setUp (cqi) -- Skip test if rpmfluff is not available (lsedlar) -- Allow to override build URL (cqi) -- Test for mock-config command (cqi) -- Tests for copr-build command (cqi) -- Fix arch-override for container-build (lucarval) -- Remove unsupported osbs for container-build (lucarval) -- cli: add --arches support for koji_cointainerbuild (mlangsdo) -- Strip refs/heads/ from branch only once (lsedlar) -- Don't install bin and config files (cqi) -- Fix kojiprofile selection in cliClient.container_build_koji (cqi) -- Avoid branch detection for 'rpkg sources' (praiskup) -- Fix encoding in new command (cqi) -- Minor wording improvement in help (pgier) -- Fix indentation (pviktori) -- Add --with and --without options to mockbuild (pviktori) - -v1.50 (2017-08-01) ------------------- - -- Fix PEP8 error (cqi) -- Spelling fixes (ville.skytta) -- Reword help and description of new-sources and upload commands - 1248737 - (cqi) -- Set autorebuild enabled by default (bfontecc) -- Add commands to whitelist_externals (cqi) -- Declare Python 3 versions to support in setup.py (cqi) -- Replace unicode with six.text_type (cqi) -- Run tests in both Python 2 and 3 with tox (cqi) -- Make tests and covered code compatible with Py3 (cqi) -- Add requirements files (cqi) -- Do not build srpm in test (cqi) -- Do not actually run git-diff in tests (cqi) -- Remove deprecated modules used in koji (cqi) -- Non-zero exit when rpmbuild fails in local command (cqi) -- Report deprecation of config via logger (lsedlar) -- Print --dist deprecation warning explicitly (lsedlar) -- utils: Avoid DeprecationWarning for messages for users (lsedlar) -- Supply namespace to lookaside (if enabled) (lsedlar) -- Support reading koji config from profile - #187 (cqi) -- Remove kitchen (cqi) -- Fix string format (cqi) -- Recommend --release instead of --dist in mockbuild --help (tmz) -- Allow overriding container build target by downstream (lsedlar) -- Add a separate property for namespace (lsedlar) -- Allow container builds from any namespace (maxamillion) -- Make osbs support optional (cqi) -- make osbs dependency optional (pavlix) -- Allow explicit namespaces with slashes (lsedlar) -- Do not hang indefinitely when lookaside cache server stops sending data - (jkaluza) -- Make --module-name work with namespaces - #216 (lsedlar) -- Include README.rst in dist package (cqi) -- More document in README - #189 (cqi) -- Make new command be able to print unicode - #205 (cqi) -- Allow to specify custom info to a dummy commit (cqi) -- Load module name correctly even if push url ends in slash - #192 (cqi) -- Replace fedorahosted.org with pagure.io - #202 (cqi) -- Fix rpm command to get changelog from SPEC - rhbz#1412224 (cqi) -- Rewrite tests to avoid running rpmbuild and rpmlint (cqi) -- Use fake value to make Command in test (cqi) -- Python 3.6 invalid escape sequence deprecation fixes (ville.skytta) - -v1.49 (2017-02-22) ------------------- - -- More upload PyCURL fixes for EL 7 (merlin) -- Move tag inheritance check into a separate method (cqi) - -v1.48 (2016-12-22) ------------------- - -- Better message when fail to authenticate via Kerberos - #180 (cqi) - -v1.47 (2016-12-15) ------------------- - -- Refactor Commands._srpmdetails -- Add missing import koji.ssl.SSLCommon - BZ#1404102 (cqi) -- Fix upload with old PyCURL - BZ#1241059 (lsedlar) -- Default krb_rdns to None (lsedlar) -- Add missing krb_rdns in default Koji config (cqi) -- Coerce the distgit_namespaced config option to a boolean - #74 (merlinthp) -- We need krb_rdns (puiterwijk) -- Fix wrong _has_krb_creds name (cqi) -- Warning if repo is an old checkout - #148 (cqi) -- Pass byte string to pycurl setopt (cqi) -- Refine Kerberos with cccolutils (cqi) -- Refactor load_kojisession - #107 (cqi) -- Call cliClient.sources from mockbuild (cqi) -- Give hint to scratch-build when build from local changes - BZ#841516 (cqi) -- Hint for fixing nontracking branch - BZ#1325775 (cqi) -- Fix using undefined variable (lsedlar) -- Read kerberos realms from config file (lsedlar) -- Make rpmbuild run with local en_US.UTF-8 in tests (cqi) -- Append fixed issue ids to each changelog - #85 (cqi) -- Dont show merge commits (cqi) -- Swtich to using CCColUtils to determine username from krb realms (puiterwijk) -- Use fake user info to config repository in tests (cqi) -- Remove unnecessary touch method (cqi) -- Fix setUp of TestImportSrpm for EL6 (cqi) -- Add tests for import_srpm (cqi) -- Tests for lookaside related commands (cqi) -- More tests to Commands and cliClient (cqi) -- Remove unused code (cqi) -- Fix tests for running tests in Copr (cqi) -- Replace nopep8 with noqa (cqi) -- Fix manpage generator (cqi) -- Backwards compatible with krbV - #139 (cqi) -- Add missing -q option to rpm command (cqi) -- Fix tests (cqi) -- python3: fix container usage (pavlix) -- python3: fix string types (pavlix) -- python3: fix configparser usage (pavlix) -- Recommend --release instead of --dist (cqi) -- More test cases for cli commands (cqi) -- Better clog - #135 (cqi) -- Avoid sys.exit in cliClient - #102 (cqi) -- Add --release to bash completion (cqi) -- Replace krbV with python-gssapi - #133 (cqi) -- Enusre to download sources in cliClient (cqi) -- New --release option (cqi) -- Commit -c should clean up after itself. - #16 (qwan) -- New option name '--mock-config' for mockbuild's '--root' - BZ#714726 (qwan) -- Allow using gssapi for lookaside caches (puiterwijk) -- Give upload its own command (cqi) -- Add docstring to check_repo (cqi) -- Add a description for the srpm and sources subcommands (pgier) -- Avoid formatting string in logging method call (cqi) -- New source code layout (cqi) -- Integration between setuptools and nosetests (cqi) -- Fix PEP8 errors (cqi) -- container-build: use correct parameter for git branch (vrutkovs) -- Avoid format string manually when call logger method (cqi) -- Remove deprecated methods (cqi) -- Show useful message when command new fails - #84 (cqi) -- Simplify _run_command (cqi) -- Output both stdout and stderr when not in tty (cqi) -- Remove downloaded invalid file - #79 (cqi) -- Fix description of verify-files - BZ#1203757 (cqi) -- Fix check unpushed changes in check_repo - BZ#1169663 (cqi) +Refer to https://docs.pagure.io/rpkg/releases.html diff --git a/doc/Makefile b/doc/Makefile index 6b8eef4..e4ddd61 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -21,7 +21,7 @@ clean-man-pages: .PHONY: clean-man-pages generate-man-pages-list: - @python3 generate_commands_docs.py + @python generate_commands_docs.py .PHONY: generate-man-pages-list man: clean-man-pages diff --git a/doc/source/conf.py b/doc/source/conf.py index f291425..c3443bb 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -46,7 +46,7 @@ master_doc = 'index' # General information about the project. project = u'rpkg' -copyright = u'2017, rpkg team' +copyright = u'2018, rpkg team' author = u'rpkg team' # The version info for the project you're documenting, acts as replacement for @@ -54,9 +54,9 @@ author = u'rpkg team' # built documents. # # The short X.Y version. -version = u'1.51' +version = u'1.55' # The full version, including alpha/beta/rc tags. -release = u'1.51' +release = u'1.55' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -171,6 +171,3 @@ texinfo_documents = [ author, 'rpkg', 'One line description of project.', 'Miscellaneous'), ] - - - diff --git a/doc/source/index.rst b/doc/source/index.rst index ce26967..35d1b20 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -14,7 +14,7 @@ Welcome to rpkg's documentation! cli api migrations - release_notes + releases Indices and tables ================== diff --git a/doc/source/release_notes.rst b/doc/source/release_notes.rst deleted file mode 100644 index e4b6d54..0000000 --- a/doc/source/release_notes.rst +++ /dev/null @@ -1,10 +0,0 @@ -.. _release_notes: - -Release Notes -============= - -.. include release notes of each version from directory release_notes. - -.. toctree:: - :maxdepth: 1 - diff --git a/doc/source/releases.rst b/doc/source/releases.rst new file mode 100644 index 0000000..0ed5cdf --- /dev/null +++ b/doc/source/releases.rst @@ -0,0 +1,17 @@ +.. _releases: + +Releases +======== + +.. toctree:: + :maxdepth: 1 + + releases/1.55 + releases/1.54 + releases/1.53 + releases/1.52 + releases/1.51 + releases/1.50 + releases/1.49 + releases/1.48 + releases/1.47 diff --git a/doc/source/releases/1.47.rst b/doc/source/releases/1.47.rst new file mode 100644 index 0000000..3e8f26f --- /dev/null +++ b/doc/source/releases/1.47.rst @@ -0,0 +1,98 @@ +.. _release-notes-1.47: + +rpkg 1.47 Release Notes +======================= + +Released on *February 15, 2016* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +- Refactor Commands._srpmdetails +- Add missing import koji.ssl.SSLCommon - `BZ#1404102`_ (cqi) +- Fix upload with old PyCURL - `BZ#1241059`_ (lsedlar) +- Default krb_rdns to None (lsedlar) +- Add missing krb_rdns in default Koji config (cqi) +- Coerce the distgit_namespaced config option to a boolean - `#74`_ (merlinthp) +- We need krb_rdns (puiterwijk) +- Fix wrong _has_krb_creds name (cqi) +- Warning if repo is an old checkout - `#148`_ (cqi) +- Pass byte string to pycurl setopt (cqi) +- Refine Kerberos with cccolutils (cqi) +- Refactor load_kojisession - `#107`_ (cqi) +- Call cliClient.sources from mockbuild (cqi) +- Give hint to scratch-build when build from local changes - `BZ#841516`_ (cqi) +- Hint for fixing nontracking branch - `BZ#1325775`_ (cqi) +- Fix using undefined variable (lsedlar) +- Read kerberos realms from config file (lsedlar) +- Make rpmbuild run with local en_US.UTF-8 in tests (cqi) +- Append fixed issue ids to each changelog - `#85`_ (cqi) +- Dont show merge commits (cqi) +- Swtich to using CCColUtils to determine username from krb realms (puiterwijk) +- Use fake user info to config repository in tests (cqi) +- Remove unnecessary touch method (cqi) +- Fix setUp of TestImportSrpm for EL6 (cqi) +- Add tests for import_srpm (cqi) +- Tests for lookaside related commands (cqi) +- More tests to Commands and cliClient (cqi) +- Remove unused code (cqi) +- Fix tests for running tests in Copr (cqi) +- Replace nopep8 with noqa (cqi) +- Fix manpage generator (cqi) +- Backwards compatible with krbV - `#139`_ (cqi) +- Add missing -q option to rpm command (cqi) +- Fix tests (cqi) +- python3: fix container usage (pavlix) +- python3: fix string types (pavlix) +- python3: fix configparser usage (pavlix) +- Recommend --release instead of --dist (cqi) +- More test cases for cli commands (cqi) +- Better clog - `#135`_ (cqi) +- Avoid sys.exit in cliClient - `#102`_ (cqi) +- Add --release to bash completion (cqi) +- Replace krbV with python-gssapi - `#133`_ (cqi) +- Enusre to download sources in cliClient (cqi) +- New --release option (cqi) +- Commit -c should clean up after itself. - `#16`_ (qwan) +- New option name '--mock-config' for mockbuild's '--root' - `BZ#714726`_ (qwan) +- Allow using gssapi for lookaside caches (puiterwijk) +- Give upload its own command (cqi) +- Add docstring to check_repo (cqi) +- Add a description for the srpm and sources subcommands (pgier) +- Avoid formatting string in logging method call (cqi) +- New source code layout (cqi) +- Integration between setuptools and nosetests (cqi) +- Fix PEP8 errors (cqi) +- container-build: use correct parameter for git branch (vrutkovs) +- Avoid format string manually when call logger method (cqi) +- Remove deprecated methods (cqi) +- Show useful message when command new fails - `#84`_ (cqi) +- Simplify _run_command (cqi) +- Output both stdout and stderr when not in tty (cqi) +- Remove downloaded invalid file - `#79`_ (cqi) +- Fix description of verify-files - `BZ#1203757`_ (cqi) +- Fix check unpushed changes in check_repo - `BZ#1169663`_ (cqi) + +.. _`#16`: https://pagure.io/rpkg/issue/16 +.. _`#74`: https://pagure.io/rpkg/issue/74 +.. _`#79`: https://pagure.io/rpkg/issue/79 +.. _`#84`: https://pagure.io/rpkg/issue/84 +.. _`#85`: https://pagure.io/rpkg/issue/85 +.. _`#102`: https://pagure.io/rpkg/issue/102 +.. _`#107`: https://pagure.io/rpkg/issue/107 +.. _`#133`: https://pagure.io/rpkg/issue/133 +.. _`#135`: https://pagure.io/rpkg/issue/135 +.. _`#139`: https://pagure.io/rpkg/issue/139 +.. _`#148`: https://pagure.io/rpkg/issue/148 +.. _`BZ#714726`: https://bugzilla.redhat.com/show_bug.cgi?id=714726 +.. _`BZ#841516`: https://bugzilla.redhat.com/show_bug.cgi?id=841516 +.. _`BZ#1169663`: https://bugzilla.redhat.com/show_bug.cgi?id=1169663 +.. _`BZ#1203757`: https://bugzilla.redhat.com/show_bug.cgi?id=1203757 +.. _`BZ#1241059`: https://bugzilla.redhat.com/show_bug.cgi?id=1241059 +.. _`BZ#1325775`: https://bugzilla.redhat.com/show_bug.cgi?id=1325775 +.. _`BZ#1404102`: https://bugzilla.redhat.com/show_bug.cgi?id=1404102 diff --git a/doc/source/releases/1.48.rst b/doc/source/releases/1.48.rst new file mode 100644 index 0000000..6b7a40e --- /dev/null +++ b/doc/source/releases/1.48.rst @@ -0,0 +1,18 @@ +.. _release-notes-1.48: + +rpkg 1.48 Release Notes +======================= + +Released on *December 22, 2016* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +- Better message when fail to authenticate via Kerberos - `#180`_ (cqi) + +.. _`#180`: https://pagure.io/rpkg/issue/180 diff --git a/doc/source/releases/1.49.rst b/doc/source/releases/1.49.rst new file mode 100644 index 0000000..76bb321 --- /dev/null +++ b/doc/source/releases/1.49.rst @@ -0,0 +1,17 @@ +.. _release-notes-1.49: + +rpkg 1.49 Release Notes +======================= + +Released on *February 22, 2017* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +- More upload PyCURL fixes for EL 7 (merlin) +- Move tag inheritance check into a separate method (cqi) diff --git a/doc/source/releases/1.50.rst b/doc/source/releases/1.50.rst new file mode 100644 index 0000000..ed24f53 --- /dev/null +++ b/doc/source/releases/1.50.rst @@ -0,0 +1,63 @@ +.. _release-notes-1.50: + +rpkg 1.50 Release Notes +======================= + +Released on *August 1, 2017* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +* Fix PEP8 error (cqi) +* Spelling fixes (ville.skytta) +* Reword help and description of new-sources and upload commands - `rhbz#1248737`_ (cqi) +* Set autorebuild enabled by default (bfontecc) +* Add commands to whitelist_externals (cqi) +* Declare Python 3 versions to support in setup.py (cqi) +* Replace unicode with six.text_type (cqi) +* Run tests in both Python 2 and 3 with tox (cqi) +* Make tests and covered code compatible with Py3 (cqi) +* Add requirements files (cqi) +* Do not build srpm in test (cqi) +* Do not actually run git-diff in tests (cqi) +* Remove deprecated modules used in koji (cqi) +* Non-zero exit when rpmbuild fails in local command (cqi) +* Report deprecation of config via logger (lsedlar) +* Print --dist deprecation warning explicitly (lsedlar) +* utils: Avoid DeprecationWarning for messages for users (lsedlar) +* Supply namespace to lookaside (if enabled) (lsedlar) +* Support reading koji config from profile - `#187`_ (cqi) +* Remove kitchen (cqi) +* Fix string format (cqi) +* Recommend --release instead of --dist in mockbuild --help (tmz) +* Allow overriding container build target by downstream (lsedlar) +* Add a separate property for namespace (lsedlar) +* Allow container builds from any namespace (maxamillion) +* Make osbs support optional (cqi) +* make osbs dependency optional (pavlix) +* Allow explicit namespaces with slashes (lsedlar) +* Do not hang indefinitely when lookaside cache server stops sending data (jkaluza) +* Make --module-name work with namespaces - #216 (lsedlar) +* Include README.rst in dist package (cqi) +* More document in README - `#189`_ (cqi) +* Make new command be able to print unicode - `#205`_ (cqi) +* Allow to specify custom info to a dummy commit (cqi) +* Load module name correctly even if push url ends in slash - `#192`_ (cqi) +* Replace fedorahosted.org with pagure.io - `#202`_ (cqi) +* Fix rpm command to get changelog from SPEC - `rhbz#1412224`_ (cqi) +* Rewrite tests to avoid running rpmbuild and rpmlint (cqi) +* Use fake value to make Command in test (cqi) +* Python 3.6 invalid escape sequence deprecation fixes (ville.skytta) + +.. _`#187`: https://pagure.io/rpkg/issue/187 +.. _`#189`: https://pagure.io/rpkg/issue/189 +.. _`#192`: https://pagure.io/rpkg/issue/192 +.. _`#202`: https://pagure.io/rpkg/issue/202 +.. _`#205`: https://pagure.io/rpkg/issue/205 +.. _`rhbz#1248737`: https://bugzilla.redhat.com/show_bug.cgi?id=1248737 +.. _`rhbz#1412224`: https://bugzilla.redhat.com/show_bug.cgi?id=1412224 diff --git a/doc/source/releases/1.51.rst b/doc/source/releases/1.51.rst new file mode 100644 index 0000000..0e21ada --- /dev/null +++ b/doc/source/releases/1.51.rst @@ -0,0 +1,44 @@ +.. _release-notes-1.51: + +rpkg 1.51 Release Notes +======================= + +Released on *October 20, 2017* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +- Do not read real koji config in test (cqi) +- Ignore TestModulesCli if openidc-client is unavailable (cqi) +- Port mbs-build to rpkg (mprahl) +- Add .vscode to .gitignore (mprahl) +- Fix TestPatch.test_rediff in order to run with old version of mock (cqi) +- Allow to specify alternative Copr config file - `#184`_ (cqi) +- Tests for patch command (cqi) +- More Tests for mockbuild command (cqi) +- More tests for getting spec file (cqi) +- Tests for container-build-setup command (cqi) +- Test for container-build to use custom config (cqi) +- Suppress output from git command within setUp (cqi) +- Skip test if rpmfluff is not available (lsedlar) +- Allow to override build URL (cqi) +- Test for mock-config command (cqi) +- Tests for copr-build command (cqi) +- Fix arch-override for container-build (lucarval) +- Remove unsupported osbs for container-build (lucarval) +- cli: add --arches support for koji_cointainerbuild (mlangsdo) +- Strip refs/heads/ from branch only once (lsedlar) +- Don't install bin and config files (cqi) +- Fix kojiprofile selection in cliClient.container_build_koji (cqi) +- Avoid branch detection for 'rpkg sources' (praiskup) +- Fix encoding in new command (cqi) +- Minor wording improvement in help (pgier) +- Fix indentation (pviktori) +- Add --with and --without options to mockbuild (pviktori) + +.. _`#184`: https://pagure.io/rpkg/issue/184 diff --git a/doc/source/releases/1.52.rst b/doc/source/releases/1.52.rst new file mode 100644 index 0000000..c191b74 --- /dev/null +++ b/doc/source/releases/1.52.rst @@ -0,0 +1,56 @@ +.. _release-notes-1.52: + +rpkg 1.52 Release Notes +======================= + +Released on *February 14, 2018* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +- Mock ThreadPool in test_module_overview (cqi) +- Drop rpmfluff in test (cqi) +- Fix hardcoded directory name in test (lsedlar) +- Improve testenv for py26 (cqi) +- Run tests with old GitPython in py26 testenv (cqi) +- Compile pycurl with openssl after F27 (cqi) +- Ignore .egg/ from git (cqi) +- Add py26 to testenv (cqi) +- Install koji from PyPI (cqi) +- Make compose-id and repo-url to take one or more values (csomh) +- Let git ignore more directories (cqi) +- Exclude pyc and __pycache__ globally in sdist (cqi) +- Handle nonexisting mbs-manager (cqi) +- Add dependent packages for Python 2.6 in setup.py (cqi) +- Updated module cli API (mcurlej) +- Declare Python versions rpkg can work with - `#278`_ (cqi) +- Fix flake8 errors (cqi) +- Fix tests that do not work with Python 3 (cqi) +- Fix tests: not impact by dict.items call (cqi) +- Add py36 to testenv - `#274`_ (cqi) +- Run tox to run tests and check code styles - `#276`_ (cqi) +- Use flake8 3.5.0 (cqi) +- Add files under requirements/ to sdist package (cqi) +- Install Koji shared library via setuptools (cqi) +- Set install and tests requires in setup.py (cqi) +- Split pypi requirements and refine versions (cqi) +- Change type of compose id from string to int (bfontecc) +- Install RPM Python binding from PyPI (cqi) +- Fix test test_lint_each_file_once (cqi) +- Add compose-id and signing-intent arguments (bfontecc) +- Use env's python (lucarval) +- Use progress callback and TaskWatcher from koji_cli.lib (cqi) +- Get buildhash from git+https:// url (lsedlar) +- lint: Avoid checking rpm's multiple times (tmz) +- Fix giturl as well by calling construct_build_url (cqi) +- Fix construct anongiturl for chain-build (cqi) +- Fix mock openidc_client (cqi) + +.. _`#274`: https://pagure.io/rpkg/issue/274 +.. _`#276`: https://pagure.io/rpkg/issue/276 +.. _`#278`: https://pagure.io/rpkg/issue/278 diff --git a/doc/source/releases/1.53.rst b/doc/source/releases/1.53.rst new file mode 100644 index 0000000..be8f882 --- /dev/null +++ b/doc/source/releases/1.53.rst @@ -0,0 +1,27 @@ +.. _release-notes-1.53: + +rpkg 1.53 Release Notes +======================= + +Released on *April 8, 2018* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +* Use NSVs and not build IDs with module-build-local --add-local-build (mprahl) +* Fix docstring of test_module_build_local_with_skiptests (mprahl) +* Add long_description to package (cqi) +* Support local module builds when there are uncommitted changes (mprahl) +* Fix clarifying error that occurs when mbs-manager is not installed (mprahl) +* Add support for Module Stream Expansion (MBS API v2) (mprahl) +* Show errors when a module build fails (mprahl) +* Move full download url construction to separate method (frostyx) +* Fix compose related params for container-build (lucarval) +* Avoid calling /usr/bin/python in tests (miro) +* Change default rpmlint configuration file (athoscr) +* Use koji.grab_session_options() rather than opencoding it (cfergeau) diff --git a/doc/source/releases/1.54.rst b/doc/source/releases/1.54.rst new file mode 100644 index 0000000..3997fc9 --- /dev/null +++ b/doc/source/releases/1.54.rst @@ -0,0 +1,31 @@ +.. _release-notes-1.54: + +rpkg 1.54 Release Notes +======================= + +Released on *May 9, 2018* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +Change Logs +----------- + +* Pass the -s/--set-default-stream to mbs-manager for module local builds. + (jkaluza) +* Write mock config correctly when run in Py 3 (cqi) +* Add --with and --without options to 'local' - `rhbz#1533416`_ (tmz) +* Add a test for 3f93433 (cqi) +* Raise error if rpm command returns non-zero (cqi) +* Use getpass.getuser() instead of pwd.getpwuid(os.getuid())[0] (jpopelka) +* Allow setting custom MBS config file and config section in rpkg.conf. + (jkaluza) +* Remove py35 testenv (cqi) +* Ignore .env and tags (cqi) +* Remove question mark from giturl (cqi) +* Added custom ArgumentParser (supports allow_abbrev) (jkucera) +* Grab the correct first line in case of rpm output (zebob.m) + +.. _`rhbz#1533416`: https://bugzilla.redhat.com/show_bug.cgi?id=1533416 diff --git a/doc/source/releases/1.55.rst b/doc/source/releases/1.55.rst new file mode 100644 index 0000000..41cf8c4 --- /dev/null +++ b/doc/source/releases/1.55.rst @@ -0,0 +1,175 @@ +.. _release-notes-1.55: + +rpkg 1.55 Release Notes +======================= + +Released on *July 19, 2018* + +Python compatibility +-------------------- + +rpkg works with Python 2.6, 2.7 and 3.6. + +What's new in rpkg 1.55 +----------------------- + +Allow pushing over HTTPS +~~~~~~~~~~~~~~~~~~~~~~~~ + +With proper OIDC configuration in client config file and server side, command +``push`` allows to authenticate packager via HTTPS by remote OpenIDC service. + +rpkg implements `git credential helper API`_, and following options are required +if to enable OIDC authentication: + +* ``oidc_id_provider``: URL of OpenIDC ID provider +* ``oidc_client_id``: client ID +* ``oidc_client_secret``: secret string +* ``oidc_scopes``: the OpenIDC scopes + +.. _`git credential helper API`: https://git-scm.com/docs/api-credentials#_credential_helpers + +These options should be put in the main application configration section, for +example: + +.. code-block:: ini + + [rpkg] + oidc_id_provider = https://id.example.org/openidc/ + oidc_client_id = rpkg + oidc_client_secret = secretsecret + oidc_scopes = openid,push + +Global option ``--name`` and ``--namespace`` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In order to avoid potential confusion of the word "module" in global option +``--module-name``, new global option ``--name`` and ``--namespace`` are +introduced. + +``--name`` has same purpose of ``--module-name``, so in any cases where +``--module-name`` was used, ``--name`` is also applied. + +``--namespace`` is used to indicate namespace which is available in dist-git. +Defaults to ``rpms`` if it is omitted from command line. Old use case of +``--module-name modules/testmodule`` is equivalent to ``--name testmodule +--namespace modules``. + +By default, rpkg does not validate the input namespace, arbitrary name is +accepted. However, this behavior can be changed by adding option +``distgit_namespaces`` to main application configuration section. See this +example, + +.. code-block:: ini + + [rpkg] + distgit_namespaces = rpms container modules + +Properties ``repo_name`` and ``ns_repo_name`` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Property ``Commands.repo_name`` returns repository name, which equals to +and deprecates ``Commands.module_name``. + +Property ``Commands.ns_repo_name`` returns repository name with namespace, +which equals to and deprecates ``Commands.module_name``. + +Any new code should use these two new properties. + +Option ``--fail-fast`` for builds in Koji +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +New option ``--fail-fast`` is to allow submit build to Koji with +`fail fast option`_ enabled, which is added since Koji 1.14. This new option +is usable in both ``build`` and ``scratch-build`` command. + +.. _`fail fast option`: https://docs.pagure.org/koji/release_notes_1.14/#fail-fast-option-for-builds + +Documentation Site +~~~~~~~~~~~~~~~~~~ + +The documentation site you are reading is newly-created and locates in +https://docs.pagure.io/rpkg + +Deprecation +----------- + +Please ensure new code do not use these deprecated things. Deprecation message +will be printed out to standard error output for any use of deprecated things. + +Global option ``--module-name`` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +``--module-name`` is deprecated by ``--name`` and ``--namespace``. Replacement +would be: + +* ``--module-name pkg``: ``--name pkg`` +* ``--module-name modules/testmodule``: ``--name testmodule --namespace modules`` + +Properties ``module_name`` and ``ns_module_name`` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +``Commands.module_name`` is deprecated by ``Commands.repo_name``. + +``Commands.ns_module_name`` is deprecated by ``Commands.ns_repo_name``. + +String format parameter ``module`` in config file +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Format parameter ``%(module)s`` in config file is deprecated. Please +use ``%(repo)s`` instead. + +Change Logs +----------- + +* Fix installing pycurl for running tests (cqi) +* Replace extra module_name with repo_name (cqi) +* Replace name module with repo in tests/fixtures/rpkg\*.conf (cqi) +* Add --fail-fast functionality - `#331`_ (tibbs) +* Fix fake spec for build in rawhide (cqi) +* Avoid to upload a file with different checksum - `#204`_ (cqi) +* Give more information when sources has invalid content - `#227`_ (cqi) +* Reserve README.md while import srpm - `#149`_ (cqi) +* Set to repo_name property when --name is specified (cqi) +* Do not restrict argparse version (cqi) +* Check old format args only if there is clone config (cqi) +* Fix typo and reword option help and deprecation message (cqi) +* Massive replacement of module (cqi) +* Deprecate module_name inside rpkg internal (cqi) +* Add new option --name and --namespace - `#301`_ (cqi) +* Man generator indent workaround (onosek) +* Fixing imports in unittests (onosek) +* Minor fixes to doc build (cqi) +* Fix mistakes during rebase (cqi) +* Run document generator script in Py3 explictly (cqi) +* Remove warning of nonexisting source/_static/ during doc build (cqi) +* Do not generate document for sample rpkg app (cqi) +* Exclude subcommand which does not have help (cqi) +* Ensure to clean files for generating HTML documents (cqi) +* Fix rebase error: add module_build_watch back (cqi) +* Fix MANIFEST.in to list files for building doc (cqi) +* Rename generate_man_pages.py (cqi) +* Generate HTML document and manpage for sample rpkg (cqi) +* Simplify doc Makefile (cqi) +* Generate commands HTML and man pages (cqi) +* Update existing docstrings (cqi) +* Generate documents by sphinx - `#50`_ (cqi) +* README: new code should be py3 compatible (ktdreyer) +* Provide base_module to clone_config templates - `#326`_ (tmz) +* Refactor man generator to be reusable (puiterwijk) +* Make sure gitcred doesn't land in man (puiterwijk) +* Don't inject the credential helper to push if OIDC is unconfigured + (puiterwijk) +* Add docblocks to gitcred methods and don't quit if OpenIDC is unconfigured + (puiterwijk) +* Also inject the credential helper with rpkg push (puiterwijk) +* Create a "gitcred" command that functions as an OIDC git-credential helper + (puiterwijk) + +.. _`#50`: https://pagure.io/rpkg/issue/50 +.. _`#149`: https://pagure.io/rpkg/issue/149 +.. _`#204`: https://pagure.io/rpkg/issue/204 +.. _`#227`: https://pagure.io/rpkg/issue/227 +.. _`#301`: https://pagure.io/rpkg/issue/301 +.. _`#326`: https://pagure.io/rpkg/issue/326 +.. _`#331`: https://pagure.io/rpkg/issue/331 diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py index bc2576e..1168cb5 100644 --- a/pyrpkg/__init__.py +++ b/pyrpkg/__init__.py @@ -564,7 +564,10 @@ class Commands(object): @property def repo_name(self): - """Property to get repository name""" + """Property to get repository name + + .. versionadded:: 1.55 + """ if not self._repo_name: self.load_repo_name() return self._repo_name @@ -576,22 +579,39 @@ class Commands(object): @property def module_name(self): - """This property ensures the module attribute""" + """This property ensures the module attribute + + .. deprecated:: 1.55 + Use :meth:`repo_name` instead. + """ self.log.warning('Property module_name is deprecated. Please use ' 'repo_name instead.') return self.repo_name @module_name.setter def module_name(self, module_name): + """Set module name + + .. deprecated:: 1.55 + Use :meth:`repo_name` instead. + """ self.log.warning('Property module_name is deprecated. Please use ' 'repo_name instead.') self.repo_name = module_name def load_module_name(self): + """Load repository name + + .. deprecated:: 1.55 + Use :meth:`load_repo_name` instead. + """ return self.load_repo_name() def load_repo_name(self): - """Loads repository name""" + """Loads repository name + + .. versionadded:: 1.55 + """ try: if self.push_url: @@ -651,12 +671,21 @@ class Commands(object): @property def ns_module_name(self): + """Return repository name + + .. deprecated:: 1.55 + Use :meth:`ns_repo_name` instead. + """ self.log.warning('Property ns_module_name is deprecated. Please use ' 'ns_repo_name instead.') return self.ns_repo_name @property def ns_repo_name(self): + """Return repository name with namespace + + .. versionadded:: 1.55 + """ if self.distgit_namespaced: return '%s/%s' % (self.ns, self.repo_name) else: diff --git a/pyrpkg/cli.py b/pyrpkg/cli.py index f33d679..782bd82 100644 --- a/pyrpkg/cli.py +++ b/pyrpkg/cli.py @@ -751,9 +751,11 @@ defined, packages will be built sequentially.""" % {'name': self.name}) def gitcred_store(self): """Nothing to do here. + .. versionadded:: 1.55 + If we returned a token, that's already stored. If the user manually - entered a password, we do not want to store it. - Thus we present to you, a no-op. + entered a password, we do not want to store it. Thus we present to you, + a no-op. """ pass @@ -781,7 +783,13 @@ defined, packages will be built sequentially.""" % {'name': self.name}) @property def oidc_configured(self): - """Returns a boolean indicating whether OIDC is configured.""" + """Returns a boolean indicating whether OIDC is configured. + + .. versionadded:: 1.55 + + :return: True if OIDC is configured. False otherwise. + :rtype: bool + """ for opt in ['oidc_id_provider', 'oidc_client_id', 'oidc_client_secret', 'oidc_scopes']: if not self.config.has_option(self.name, opt): @@ -793,8 +801,10 @@ defined, packages will be built sequentially.""" % {'name': self.name}) def oidc_client(self): """Returns a OpenID Connect client reference. - Returns: (openidc_client.OpenIDCClient or None): client if configured, - None if unconfigured. + .. versionadded:: 1.55 + + :return: client if configured, None if unconfigured. + :rtype: openidc_client.OpenIDCClient or None """ if self._oidc_client: return self._oidc_client @@ -846,7 +856,10 @@ defined, packages will be built sequentially.""" % {'name': self.name}) return self.oidc_client.report_token_issue() def gitcred_get(self): - """Performs the git-credential-helper get operation.""" + """Performs the git-credential-helper get operation. + + .. versionadded:: 1.55 + """ args = self._gitcred_check_input() if not args: return @@ -873,7 +886,10 @@ defined, packages will be built sequentially.""" % {'name': self.name}) self._gitcred_return(args) def gitcred_erase(self): - """Performs the git-credential-helper erase operation.""" + """Performs the git-credential-helper erase operation. + + .. versionadded:: 1.55 + """ args = self._gitcred_check_input() if not args: return diff --git a/setup.py b/setup.py index 0479ee4..cc4f418 100755 --- a/setup.py +++ b/setup.py @@ -52,7 +52,7 @@ with open(readme_rst, 'r') as readme: setup( name="rpkg", - version="1.54", + version="1.55", author="Dennis Gilmore", author_email="ausil@fedoraproject.org", description=("A python library and runtime script for managing RPM"