Editing Reviewing Octave Forge packages

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
{{Warning | Since July 2022 Octave packages are organized by https://packages.octave.org.}}
== Help reviewing Octave-Forge packages ==


The reviewing procedure in short:
We need help. Here is how:


# Pick a package at https://sourceforge.net/p/octave/package-releases/
# Pick a package at https://sourceforge.net/p/octave/package-releases/
# Copy the check-list below and fill it out, marking each box:
# Copy the check-list below and fill it out, marking each box:
#* <code>[x]</code> for successfully passed
    * `[x]` for passed
#* <code>[ ]</code> for not done / error (please give below the checklist a brief reason)
    * `[n/a]` for non-applicable
# Paste your filled in check-list as a comment on the issue above
    * `[S]` for skipped (because you cannot do it, missing software, etc)
# An [https://sourceforge.net/p/octave/_members/ Octave Forge Admin] will try to look over your review and hopefully release the package.
    * `[F]` for fails.
# Paste your filled in check-list as a coFeel free to helpmment on the issue above


== Checklist ==
 
=== Checklist ===


<pre>
<pre>
# Repository / Metadata
[ ] release candidate installed on latest Octave release
 
[ ] no compiler errors or serious warnings
- [ ] release commit/changeset specified and present in repository
[ ] ran all tests using runtests (including tests in the src dir)
- [ ] `generate_package_html` / `make html` works without errors and warnings
[ ] ran doctest on all functions (optional)
- [ ] generated HTML documentation looks sane
[ ] Above steps were run on Octave versions:
 
    * ________ [provide list]
# pkg-tool runs without errors or warnings
[ ] Run generate_package_html
 
[ ] no makeinfo errors and warnings during HTML build
- [ ] `pkg install  foo`
[ ] unpacked and spot-checked the generated HTML documentation
- [ ] `pkg load      foo`
[ ] NEWS file makes sense, version and date match
- [ ] `pkg unload    foo`
[ ] All functions are listed in INDEX
- [ ] `pkg uninstall foo`
- Above steps were run on Octave and OS versions:
  - ________
  -  ________
 
# Package tests
 
- [ ] ran `pkg test foo`
- [ ] ran `doctest`
 
# Package files in release candidate tarball
 
- [ ] `DESCRIPTION` version and release date updated
- [ ] `DESCRIPTION` minimum Octave tested
- [ ] `DESCRIPTION` all dependencies are listed
- [ ] `NEWS` version and date match
- [ ] `NEWS` big changes announced
- [ ] `INDEX` all (new) functions are listed
- [ ] version numbers in help text and function body (e.g., banners) updated
- [ ] license specifications in help text and function body agree `licensecheck -r`
- [ ] file permissions are readable/executable by all users
- [ ] junk files are removed (hidden dot files, backup files, results of configure runs, etc.)
- [ ] (optional if present) `src/configure.ac` version updated
</pre>
</pre>


== Admin tasks ==
== Common problems ==
 
# Upload release tarball to [https://sourceforge.net/projects/octave/files/Octave%20Forge%20Packages/Individual%20Package%20Releases/ Individual Package Releases]
# Update https://octave.sourceforge.io/
#* Upload new package HTML documentation to {{Path|/home/project-web/octave/htdocs/packages/foo/}} <ref>How to access the Octave Forge webspace [https://sourceforge.net/p/forge/documentation/Project%20Web%20Services/ SourceForge help].</ref>
#* Brief notes: `sftp` to look around the site: `sftp <user>@web.sourceforge.net`
#* Then `rsync -auvn --delete ...` to sync the particular package content.
# Optional: Update news feed, add entry in [https://sourceforge.net/p/octave/project-web/ci/default/tree/htdocs/news.html htdocs/news.html]
#* (currently unmaintained, after about March 2022)
 
== SourceForge Project information ==
 
* admin accounts: https://sourceforge.net/p/octave/_members
* Package repositories
** hg: https://sourceforge.net/p/octave/_list/hg
** git: https://sourceforge.net/p/octave/_list/git
* Octave Forge web site https://octave.sourceforge.io and [https://sourceforge.net/p/octave/project-web/ci/default/tree source code]
 
{{File|.htaccess|<pre>
<FilesMatch "\.svgz$">
Header set Content-Encoding gzip
</FilesMatch>
 
RewriteEngine on
 
# use PHP files in root directory
RewriteRule ^archive\.html$ /archive.php [PT]
RewriteRule ^bugs\.html$ /bugs.php [PT]
RewriteRule ^code\.html$ /code.php [PT]
RewriteRule ^developers\.html$ /developers.php [PT]
RewriteRule ^docs\.html$ /docs.php [PT]
RewriteRule ^FAQ\.html$ /FAQ.php [PT]
RewriteRule ^function_list\.html$ /function_list.php [PT]
RewriteRule ^index\.html$ /index.php [PT]
RewriteRule ^links\.html$ /links.php [PT]
RewriteRule ^NEWS\.html$ /NEWS.php [PT]
RewriteRule ^packages\.html$ /packages.php [PT]
 
# root directory of files for download
RewriteRule ^released-packages/$ https://sourceforge.net/projects/octave/files/ [R=307,L]
 
# a particular packages repository
RewriteRule ^pkg-repository/(.*)/$ https://sourceforge.net/p/octave/$1/ [R=307,L]
 
# don't rewrite paths in the following directories
RewriteRule ^templates(/|$)(.*) - [L]
RewriteRule ^pkg_icon(/|$)(.*) - [L]
RewriteRule ^java(/|$)(.*) - [L]
RewriteRule ^doxygen32(/|$)(.*) - [L]
RewriteRule ^doxygen34(/|$)(.*) - [L]
RewriteRule ^doxygen36(/|$)(.*) - [L]
RewriteRule ^doxygen38(/|$)(.*) - [L]
RewriteRule ^doxygen40(/|$)(.*) - [L]
RewriteRule ^doxygen41(/|$)(.*) - [L]
RewriteRule ^coda(/|$)(.*) - [L]
RewriteRule ^octave(/|$)(.*) - [L]
RewriteRule ^octave\.old(/|$)(.*) - [L]
RewriteRule ^old_packages(/|$)(.*) - [L]
 
# webserver of sourceforge doesn't understand END rewrite rule flag,
# so we have to check for looping instead if necessary
 
# forbid direct access to packages directory
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^packages(/|$)(.*) - [F]
 
# paths in all other sudirectories are rewritten to be under directory
# "packages"
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^(.+/.*) /packages/$1 [L]
 
# FIXME: Trailing slash is not appended for (non-existing, to be
# re-written) package directories at top level. This should be cured
# in a better way than with the following.
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+) /packages/$1/ [L]
 
 
<FilesMatch "\.(php|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header unset Expires
Header set Cache-Control "no-cache, must-revalidate"
</ifModule>
</FilesMatch>
</pre>}}
 
== Footnotes ==


<references/>
Here are some common problems that reviewers can check for


[[Category:Outdated pages]]
* INDEX is missing some new functions added
* NEWS has not been updated or is missing something big
* Version numbers or dates do not match between DESCRIPTION and NEWS
* Common makeinfo errors like "@bye seen before @end deftypefn"
* DESCRIPTION says pkg works with old Octave 4.x but it fails for me
* Obviously, compiler errors, warnings, test failures
Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Templates used on this page: