Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assorted cleanups for 2.9.0 #444

Merged
merged 5 commits into from
Feb 10, 2020
Merged

Conversation

sgallagher
Copy link
Collaborator

Reconcile differences between upstream and Fedora/EPEL packaging.

Signed-off-by: Stephen Gallagher sgallagh@redhat.com

@sgallagher sgallagher added the WIP Work-in-progress, do not merge label Feb 6, 2020
@sgallagher
Copy link
Collaborator Author

I just pushed an additional patch adding two more valgrind suppressions that we missed somehow.

@mmathesius
Copy link
Collaborator

I just pushed an additional patch adding two more valgrind suppressions that we missed somehow.

Sorry about that. There seems to be some more. The containerized environment is catching other things. And I completely forgot about python2. :-(

@packit-as-a-service
Copy link

Congratulations! One of the builds has completed. 🍾

You can install the built RPMs by following these steps:

  • sudo yum install -y dnf-plugins-core on RHEL 8
  • sudo dnf install -y dnf-plugins-core on Fedora
  • dnf copr enable packit/fedora-modularity-libmodulemd-444
  • And now you can install the packages.

Please note that the RPMs should be used only in a testing environment.

@sgallagher
Copy link
Collaborator Author

I just pushed an additional patch adding two more valgrind suppressions that we missed somehow.

Sorry about that. There seems to be some more. The containerized environment is catching other things. And I completely forgot about python2. :-(

No problem. I've got it nearly sorted out now. We need to skip attempting to scan the python2 on Rawhide anyway, since it doesn't exist.

Drop the `with_py{23}_overrides` options to meson and add `with_py2`
in its place. `with_py2` will now default to `false`, since python2
is now EOL.

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
@sgallagher
Copy link
Collaborator Author

OK, I reworked this patch series a fair bit. There are now three patches:

  1. This patch changes the default for building python 2 overrides (and running python 2 tests) to be false, since python 2 is now EOL upstream. It also renames the configuration options to -Dwith_py{23}, dropping the _overrides suffix since it affects test running as well. This will need to be called out in the release notes for 2.9.0
  2. This patch cleans up the valgrind suppression file to support Python 2 as well as Python 3.8 (on Rawhide) and other versions in the future.
  3. This patch syncs the specfile from Fedora/EPEL with upstream so that we will be able to take advantage of Packit's release handling.

@mmathesius I think this is the last patch set before we release 2.9.0, do you agree?

Copy link
Collaborator

@mmathesius mmathesius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This all looks good! Unfortunately, CI is showing valgrind grumbles for non-Fedora distributions...

@mmathesius
Copy link
Collaborator

@mmathesius I think this is the last patch set before we release 2.9.0, do you agree?

@sgallagher I just created #445 to add a man page for modulemd-validator--if you wanted to wait for me to sort that out so it can be included.

@sgallagher
Copy link
Collaborator Author

Hmm, I see the valgrind complaints on OpenSUSE and Mageia... @Conan-Kudo do you have any idea why those platforms would be reporting different valgrind output than Fedora?

The original ones only supported Python 3 on Fedora 31. We were
experiencing additional issues with python3 on Rawhide as well as
python2 on all releases.

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
Python on OpenSUSE Tumbleweed seems broken; valgrind detects a lot
of use-after-free issues.

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
Reconcile differences between upstream and Fedora/EPEL packaging.

Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
@sgallagher
Copy link
Collaborator Author

@mmathesius The previous patch-set passed CI on the alternative distributions this time. I canceled it because I wanted to add one more patch to this PR to include descriptions for the meson_options.txt. Running meson configure in a build directory will now produce:

...
Project options:
  Option             Current Value Possible Values           Description                                                                                                                                                                 
  ------             ------------- ---------------           -----------                                                                                                                                                                 
  developer_build    true          [true, false]             Enables automatic code formatters and memory leak checks. This option should be set to FALSE for release builds.                                                            
  libmagic           enabled       [enabled, disabled, auto] Enables the use of libmagic to detect compression of YAML files.                                                                                                            
  python_name                                                The name of the Python 3 interpreter to use for generating Python bindings and running tests. If left blank, it defaults to the version of Python 3 being used to run meson.
  rpmio              enabled       [enabled, disabled, auto] Use the rpmio library to automatically decompress gzip, bzip2 and xz YAML streams.                                                                                          
  skip_clang_tidy    true          [true, false]             Do not use the clang-tidy utility for code formatting.                                                                                                                      
  skip_formatters    false         [true, false]             Do not do any automatic formatting of source code.                                                                                                                          
  skip_introspection false         [true, false]             Do not generate GObject Introspection data.                                                                                                                                 
  test_dirty_git     false         [true, false]             Check whether the automatic formatting tools have made changes. Used during CI to verify coding style compliance                                                            
  test_installed_lib false         [true, false]             Build only the test suite and run it against a copy of libmodulemd installed on the local system.                                                                           
  with_docs          true          [true, false]             Build API documentation.                                                                                                                                                    
  with_py2           false         [true, false]             Build Python 2 language bindings and run Python 2 tests                                                                                                                     
...

@sgallagher
Copy link
Collaborator Author

Assuming CI passes, I think this is finally ready.

@sgallagher sgallagher changed the title Update libmodulemd.spec Assorted cleanups for 2.9.0 Feb 7, 2020
Copy link
Collaborator

@mmathesius mmathesius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

I wondered why the previous CI run suddenly stopped.

I'll add a description to the option I added in #445, too.

sgallagher added a commit that referenced this pull request Feb 10, 2020
Assorted cleanups for 2.9.0
@sgallagher sgallagher merged commit b45d0c1 into fedora-modularity:master Feb 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WIP Work-in-progress, do not merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants