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 |