Coder Social home page Coder Social logo

shflags's Introduction

shFlags 1.0.x README

code.google.com

This project is stored on code.google.com as http://code.google.com/p/shflags/. Documentation is available there, as are all releases and source code. The source code is stored in Subversion and can be accessed using the following information.

Browse the code in a web browser:

Check out the code locally :

$ svn checkout http://shflags.googlecode.com/svn/trunk/ shflags-read-only

Documentation is available on the web at http://code.google.com/p/shflags/wiki/Documentation10x.

Making a release

For these steps, it is assumed we are working with release 1.0.0.

Steps:

  • write release notes
  • update version
  • finish changelog
  • check all the code in
  • tag the release
  • export the release
  • create tarball
  • md5sum the tarball and sign with gpg
  • update website
  • post to code.google.com and Freshmeat

Write Release Notes

This should be pretty self explainatory. Use one of the release notes from a previous release as an example.

Update Version

Edit src/shflags and change the version number in the FLAGS_VERSION variable.

Finish Documentation

Make sure that any remaning changes get put into the CHANGES-X.X.txt file.

Finish writing the RELEASE_NOTES-X.X.X.txt. Once it is finished, run it through the fmt command to make it pretty. (This assumes the lines weren't already wrapped at 80 chars when the file was edited.) :

$ fmt -w 80 RELEASE_NOTES-2.0.0.txt >RELEASE_NOTES-2.0.0.txt.new
$ mv RELEASE_NOTES-2.0.0.txt.new RELEASE_NOTES-2.0.0.txt

We want to have an up-to-date version of the documentation in the release, so we'd better build it. :

$ pwd
.../shflags/source/1.0
$ rst2html --stylesheet-path=doc/rst2html.css README.txt >README.html

Check In All the Code

This step is pretty self-explainatory :

$ pwd
.../shflags/source/1.0
$ svn ci -m "finalizing 1.0.0 release"

Tag the Release

$ cd ..
$ pwd
.../shflags/source
$ ls
1.0
$ svn cp -m "Release 1.0.0" 1.0 https://shflags.googlecode.com/svn/tags/1.0.0

Export the Release

$ cd ../builds
$ pwd
.../shflags/builds
$ svn export https://shflags.googlecode.com/svn/tags/1.0.0 shflags-1.0.0

Create the tarball

$ tar cfz ../releases/shflags-1.0.0.tgz shflags-1.0.0

Sign the tarball with gpg

$ cd ../releases
$ gpg --default-key [email protected] --detach-sign shflags-1.0.0.tgz

Post the release

To post the release, the ProjectInfo page needs to be updated with the release info (release, date, and MD5), and the release with GPG signature needs to uploaded.

Post to the Web

Appendix

google-gflags

http://code.google.com/p/google-gflags/

Miscellaneous

This document is written using the Restructured Text format to make it easily parsable into an HTML file.

shflags's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shflags's Issues

Invalid test for `shwordsplit` being set in zsh

According to the zsh docs, setopt will print shwordsplit option only if its value differs from default one in current emulation mode. If /bin/sh happens to be a symlink to zsh then shwordsplit option is set by default and thus test fails. Test that shows the problem:

ln -s /bin/zsh ./sh
./sh -c 'setopt ; A="a  b  c" ; echo $A'

will output

nohashdirs
a b c

, while

zsh -c 'setopt ; A="a  b  c" ; echo $A'

outputs

nohashdirs
a  b  c

(note amount of spaces between letters, it clearly indicates whether zsh is performing word splitting on a variable).

A valid way to test option (not) being set is checking whether word splitting is actually being performed:

if [[ "$(unset IFS; A='a  b'; echo -n $A)" != "a b" ]]; then

.

Here is a link to a stackoverflow question where the problem appeared.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.