<div class="container">
    <h1>Recommended update for osc</h1>

    <table class="table table-striped table-bordered">
        <tbody>
        <tr>
            <th>Announcement ID:</th>
            <td>SUSE-RU-2025:03279-1</td>
        </tr>
        <tr>
            <th>Release Date:</th>
            <td>2025-09-19T14:13:56Z</td>
        </tr>
        
        <tr>
            <th>Rating:</th>
            <td>moderate</td>
        </tr>
        <tr>
            <th>References:</th>
            <td>
                <ul>
                    
                    
                </ul>
            </td>
        </tr>
        
        <tr>
            <th>Affected Products:</th>
            <td>
                <ul class="list-group">
                    
                        <li class="list-group-item">Development Tools Module 15-SP6</li>
                    
                        <li class="list-group-item">Development Tools Module 15-SP7</li>
                    
                        <li class="list-group-item">openSUSE Leap 15.6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP7</li>
                    
                </ul>
            </td>
        </tr>
        </tbody>
    </table>

    <p>An update that  can now be installed.</p>

    


    
        <h2>Description:</h2>
    
    <p>This update for osc fixes the following issues:</p>
<p>osc was updated to 1.20.0:</p>
<ul>
<li>
<p>Command-line:</p>
<ul>
<li>Fix &#x27;osc fork&#x27; command to use the right tracking branch</li>
<li>Fix &#x27;osc blt&#x27; command by checking if the working copy is a package</li>
<li>Make &#x27;osc buildlog&#x27; work outside of osc package directory</li>
<li>Add &#x27;git-obs pr close&#x27; and &#x27;git-obs pr reopen&#x27; commands</li>
<li>Add &#x27;close&#x27; option to &#x27;git-obs pr review interactive&#x27;</li>
<li>Change &#x27;git-obs pr review interactive&#x27; to work with all archives, not only those in Git LFS</li>
<li>Fix checkout of the base branch in &#x27;git-obs pr review interactive&#x27; command</li>
</ul>
</li>
<li>
<p>Library:</p>
<ul>
<li>Support _manifest file in git store</li>
<li>Allow pull request IDs in &#x27;<owner>/<repo>!<number>&#x27; format</li>
<li>Properly handle deleted users and teams in the git-obs timeline</li>
<li>Handle situations when there&#x27;s &#x27;None&#x27; among timeline entries</li>
<li>Skip binary files in gitea_api.PullRequest.get_patch()</li>
<li>Change get_user_input(), add support for vertically printed list of answers</li>
</ul>
</li>
<li>
<p>Spec:</p>
<ul>
<li>Provide git-obs</li>
</ul>
</li>
</ul>
<p>Update to 1.19.1:</p>
<ul>
<li>
<p>Command-line:</p>
<ul>
<li>Use OSC_PACKAGE_CACHE_DIR env var instead of deprecated OSC_PACKAGECACHEDIR</li>
</ul>
</li>
<li>
<p>Connection:</p>
<ul>
<li>Check for both upper and lowercase versions of HTTP_PROXY and HTTPS_PROXY env vars</li>
</ul>
</li>
<li>
<p>Library:</p>
<ul>
<li>Add &#x27;trackingbranch&#x27; field to ScmsyncObsinfo model</li>
<li>Revert "Return None if GitStore cannot determine apiurl"</li>
<li>Throw a proper exception when &#x27;apiurl&#x27; argument of &#x27;makeurl()&#x27; is empty</li>
<li>Move code setting apiurl from store to &#x27;osc.conf.get_config()&#x27;</li>
<li>Simplify &#x27;osc.commandline.Osc.get_api_url()&#x27; to return the value from &#x27;self.options&#x27;</li>
<li>Remove &#x27;osc.commandline.Osc.post_argparse()&#x27; because it&#x27;s no longer used</li>
<li>Fix unit tests to use the new code path to run osc</li>
<li>Fix osc.gitea_api.dt_sanitize() by replacing dateutil with datetime</li>
</ul>
</li>
</ul>
<p>Update to 1.19.0:</p>
<ul>
<li>
<p>Command-line:</p>
<ul>
<li>Add &#x27;git-obs pr cancel-scheduled-merge&#x27; command</li>
<li>Add timeline to &#x27;git-obs pr review interactive&#x27;</li>
<li>Add &#x27;--timeline&#x27; option to &#x27;git-obs pr get&#x27;</li>
<li>Fix &#x27;git-obs pr search&#x27; by using pagination to retrieve all results</li>
<li>Extend &#x27;--message&#x27; option in git-obs subcommands with the &#x27;-m&#x27; short option</li>
<li>Add a different message for scheduled merges in &#x27;git-obs pr merge&#x27; command</li>
</ul>
</li>
<li>
<p>Library:</p>
<ul>
<li>Add &#x27;conn&#x27; parameter to gitea_api.common.GiteaModel</li>
<li>Add gitea_api.Connection.scheme attribute</li>
<li>Add gitea_api.PullRequest.merge_commit property</li>
<li>Add gitea_api.PullRequest.get_owner_repo_number()</li>
<li>Add gitea_api.common.dt_sanitize() for sanitizing datetime strings</li>
<li>Handle missing head repo in the PullRequest properties</li>
<li>Return None if GitStore cannot determine apiurl</li>
<li>Remove extra newline from store files</li>
<li>Fix the &#x27;Move remaining imports in osc.babysitter into try-except block&#x27; change by preserving the order of handling the exceptions</li>
</ul>
</li>
<li>
<p>Spec:</p>
<ul>
<li>Use primary_python to define runtime requires matching the shebang lines</li>
<li>Provide %{use_python_pkg}-osc for all pythons and python3-osc for primary_python</li>
<li>Add conflict with obs-scm-bridge < 0.7.3</li>
</ul>
</li>
</ul>
<p>Update to 1.18.0:</p>
<ul>
<li>
<p>Command-line:</p>
<ul>
<li>Add &#x27;git-obs pr comment [--message=...]&#x27; command</li>
<li>Add &#x27;git-obs pr show-patch&#x27; command</li>
<li>Add &#x27;--reviewer&#x27; option to &#x27;git-obs pr review {approve,decline,interactive}&#x27; to support group reviews via group review bot</li>
<li>Update &#x27;git-obs pr review interactive&#x27; to return non-zero return codes for &#x27;exit&#x27; and &#x27;skip&#x27; actions</li>
<li>Make &#x27;osc results --show-excluded&#x27; work in a project context</li>
<li>Add &#x27;--no-pager&#x27; global option</li>
<li>Fix &#x27;osc fork&#x27; by copying whole query part to the new scmsync url</li>
<li>Fix &#x27;osc buildinfo&#x27; for git packages by handing the &#x27;build_repositories&#x27; files by store objects</li>
<li>Fix crash in &#x27;git-obs pr get --patch&#x27;</li>
<li>Fix git-obs to exit with 130 on keyboard interrupt</li>
<li>Fix --sccache help typo in &#x27;osc build&#x27; command</li>
</ul>
</li>
<li>
<p>Connection:</p>
<ul>
<li>Don&#x27;t retry requests on 504 Gateway Timeout</li>
</ul>
</li>
<li>
<p>Library:</p>
<ul>
<li>If a devel project is not specified, try reading it from a mapping from URL set in OBS:GitDevelProjectMap project attribute</li>
<li>Improve detection of packages and projects in git</li>
<li>scmsync_obsinfo: Pass correct revision to obs-scm-bridge</li>
<li>Add obs_api.Request.search() method</li>
<li>Raise an exception if obs-scm-bridge fails</li>
<li>Fix obs_scm.Package.get_pulled_srcmd5() returning an empty string</li>
<li>Fix git store to support non-default remote</li>
<li>Extend &#x27;gitea_api.User.get()&#x27; to take &#x27;username&#x27; parameter</li>
<li>Move get_editor() and related functions from command-line module to gitea_api.common</li>
<li>Migrate subcommands from using Store() to get_store() that is git aware</li>
<li>Make imports lazy to imporove osc load times</li>
</ul>
</li>
</ul>



    

    <h2>Patch Instructions:</h2>
    <p>
        To install this SUSE  update use the SUSE recommended
        installation methods like YaST online_update or "zypper patch".<br/>

        Alternatively you can run the command listed for your product:
    </p>
    <ul class="list-group">
        
            <li class="list-group-item">
                Development Tools Module 15-SP7
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP7-2025-3279=1</code>
                    
                    
                
            </li>
        
            <li class="list-group-item">
                openSUSE Leap 15.6
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-2025-3279=1 openSUSE-SLE-15.6-2025-3279=1</code>
                    
                    
                
            </li>
        
            <li class="list-group-item">
                Development Tools Module 15-SP6
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP6-2025-3279=1</code>
                    
                    
                
            </li>
        
    </ul>

    <h2>Package List:</h2>
    <ul>
        
            
                <li>
                    Development Tools Module 15-SP7 (noarch)
                    <ul>
                        
                            <li>osc-1.20.0-150600.15.6.1</li>
                        
                    </ul>
                </li>
            
        
            
                <li>
                    openSUSE Leap 15.6 (noarch)
                    <ul>
                        
                            <li>osc-1.20.0-150600.15.6.1</li>
                        
                    </ul>
                </li>
            
        
            
                <li>
                    Development Tools Module 15-SP6 (noarch)
                    <ul>
                        
                            <li>osc-1.20.0-150600.15.6.1</li>
                        
                    </ul>
                </li>
            
        
    </ul>

    
</div>