Reviewing Octave Forge packages: Difference between revisions
Jump to navigation
Jump to search
(Update Checklist fill out procedure.) |
|||
(12 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{Warning | Since July 2022 Octave packages are organized by https://packages.octave.org.}} | ||
The reviewing procedure in short: | The reviewing procedure in short: | ||
Line 13: | Line 13: | ||
<pre> | <pre> | ||
# Repository | # Repository / Metadata | ||
- [ ] | - [ ] release commit/changeset specified and present in repository | ||
- [ ] | - [ ] `generate_package_html` / `make html` works without errors and warnings | ||
- [ ] generated HTML documentation looks sane | |||
# | # pkg-tool runs without errors or warnings | ||
- [ ] `pkg install foo` | |||
- [ ] `pkg load foo` | - [ ] `pkg load foo` | ||
- [ ] `pkg unload foo` | - [ ] `pkg unload foo` | ||
- [ ] `pkg uninstall foo` | - [ ] `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 | # Package files in release candidate tarball | ||
- [ ] `DESCRIPTION` version updated | - [ ] `DESCRIPTION` version and release date updated | ||
- [ ] `DESCRIPTION` minimum Octave tested | - [ ] `DESCRIPTION` minimum Octave tested | ||
- [ ] `DESCRIPTION` all dependencies are listed | - [ ] `DESCRIPTION` all dependencies are listed | ||
Line 53: | Line 49: | ||
</pre> | </pre> | ||
[[ | == Admin tasks == | ||
# 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/> | |||
[[Category:Outdated pages]] |
Latest revision as of 18:58, 21 February 2023
Since July 2022 Octave packages are organized by https://packages.octave.org.
The reviewing procedure in short:
- Pick a package at https://sourceforge.net/p/octave/package-releases/
- Copy the check-list below and fill it out, marking each box:
[x]
for successfully passed[ ]
for not done / error (please give below the checklist a brief reason)
- Paste your filled in check-list as a comment on the issue above
- An Octave Forge Admin will try to look over your review and hopefully release the package.
Checklist[edit]
# Repository / Metadata - [ ] release commit/changeset specified and present in repository - [ ] `generate_package_html` / `make html` works without errors and warnings - [ ] generated HTML documentation looks sane # pkg-tool runs without errors or warnings - [ ] `pkg install foo` - [ ] `pkg load foo` - [ ] `pkg unload foo` - [ ] `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
Admin tasks[edit]
- Upload release tarball to Individual Package Releases
- Update https://octave.sourceforge.io/
- Upload new package HTML documentation to /home/project-web/octave/htdocs/packages/foo/ [1]
- 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 htdocs/news.html
- (currently unmaintained, after about March 2022)
SourceForge Project information[edit]
- admin accounts: https://sourceforge.net/p/octave/_members
- Package repositories
- Octave Forge web site https://octave.sourceforge.io and source code
File: .htaccess
<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>
Footnotes[edit]
- ↑ How to access the Octave Forge webspace SourceForge help.