Merge lp:~coreygoldberg/selenium-simple-test/bump-version-0-2-5dev into lp:selenium-simple-test
- bump-version-0-2-5dev
- Merge into trunk
Status: | Merged |
---|---|
Approved by: | Corey Goldberg |
Approved revision: | 436 |
Merged at revision: | 431 |
Proposed branch: | lp:~coreygoldberg/selenium-simple-test/bump-version-0-2-5dev |
Merge into: | lp:selenium-simple-test |
Diff against target: |
407 lines (+30/-312) 4 files modified
README (+14/-301) docs/changelog.rst (+4/-0) docs/releasing.rst (+11/-10) src/sst/__init__.py (+1/-1) |
To merge this branch: | bzr merge lp:~coreygoldberg/selenium-simple-test/bump-version-0-2-5dev |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Corey Goldberg (community) | Approve | ||
Vincent Ladeuil (community) | Approve | ||
Review via email: mp+177696@code.launchpad.net |
Commit message
bump version to 0.2.5dev
Description of the change
bumped version number to 0.2.5dev (post-release)
Vincent Ladeuil (vila) wrote : | # |
Vincent Ladeuil (vila) wrote : | # |
I encounter issues with packaging around the version string.
It appears that '0.2.4dev' is greater than '0.2.4' so both 'bzr merge-upstream' and the ppa fail to recognize '0.2.4' as the final release version string.
We need to use a different scheme than appending 'dev'.
And the simplest way to address the packaging issues would be to release '0.2.5' as a bump-release-
Vincent Ladeuil (vila) wrote : | # |
Appending '~dev' instead of 'dev' should work.
Vincent Ladeuil (vila) wrote : | # |
Never mind, I've found a workaround for the ppa: I released a 0.2.5~bzr430-
I'll file a merge proposal for my updates of the packaging.rst doc once 0.2.5 is opened.
In summary, just create the section in changelog.rst and we'll be good.
- 432. By Corey Goldberg
-
updated README to match index.rst content
- 433. By Corey Goldberg
-
fixed rst headers in release instructions
- 434. By Corey Goldberg
-
added changelog section for 0.2.5
Corey Goldberg (coreygoldberg) wrote : | # |
added the changelog section, and updated README properly. I should have done that *before* release :/
Corey Goldberg (coreygoldberg) : | # |
Vincent Ladeuil (vila) wrote : | # |
We shouldn't duplicate that much between README and index.rst especially when we have up-to-date doc online as per the release process :-/
Would you mind simplify the README in this direction ?
305 - * run `make_actions_
306 -
Why did you remove that ? AFAIR, I added it because it's required and wasn't easy to guess.
Corey Goldberg (coreygoldberg) wrote : | # |
> We shouldn't duplicate that much between README and index.rst
I think I agree. So, the README is what ends up on the PyPI index page as documentation when we release there. It made sense to have some basic instructions/
I can trim it down to just a few line description with a link to the official web docs. I think that makes more sense.
> Why did you remove that ?
that step was duplicated.. it's already listed in the step above.
Vincent Ladeuil (vila) wrote : | # |
> > We shouldn't duplicate that much between README and index.rst
>
> I think I agree. So, the README is what ends up on the PyPI index page as
> documentation when we release there. It made sense to have some basic
> instructions/
> much too big :)
>
> I can trim it down to just a few line description with a link to the official
> web docs. I think that makes more sense.
Great, let's do that !
>
>
>
> > Why did you remove that ?
>
> that step was duplicated.. it's already listed in the step above.
/me blinks
WTH ?
Oh, I think I remember now. 'generate HTML documentation' is what I was looking for. 'generate actions doc' doesn't make much sense to me at the time.
I think having all steps in 'generate HTML documentation' is clearer so the reader doesn't have to guess the relationship between the two steps.
Does that make sense ?
Corey Goldberg (coreygoldberg) wrote : | # |
> > I can trim it down to just a few line description with a link to the
> official
> > web docs. I think that makes more sense.
>
> Great, let's do that !
will do. I will update this branch.
> > > Why did you remove that ?
> >
> > that step was duplicated.. it's already listed in the step above.
>
> /me blinks
> I think having all steps in 'generate HTML documentation' is clearer so the
> reader doesn't have to guess the relationship between the two steps.
>
> Does that make sense ?
yes, I'll update as well.
- 435. By Corey Goldberg
-
moved generate actions.rst instructions within release doc
- 436. By Corey Goldberg
-
trimmed down README
Corey Goldberg (coreygoldberg) wrote : | # |
pushed.
Vincent Ladeuil (vila) wrote : | # |
<3 So much clearer !
Thanks for the fixes in releasing.txt, I can never find the correct rst rules... there are so many of them used differently on different projects ;-D
Corey Goldberg (coreygoldberg) : | # |
Preview Diff
1 | === modified file 'README' | |||
2 | --- README 2013-06-03 18:15:36 +0000 | |||
3 | +++ README 2013-07-31 18:03:25 +0000 | |||
4 | @@ -16,16 +16,17 @@ | |||
5 | 16 | SST (selenium-simple-test) is a web test framework that uses Python | 16 | SST (selenium-simple-test) is a web test framework that uses Python |
6 | 17 | to generate functional browser-based tests. | 17 | to generate functional browser-based tests. |
7 | 18 | 18 | ||
12 | 19 | Tests are made up of scripts, created by composing actions that drive | 19 | Tests are made up of scripts or test case classes, created by composing |
13 | 20 | a browser and assert conditions. You have the flexibilty of the full | 20 | actions that drive a browser and assert conditions. You have the flexibilty |
14 | 21 | Python language, along with a convenient set of functions to simplify | 21 | of the full Python language, along with a convenient set of functions to |
15 | 22 | web testing. | 22 | simplify web testing. |
16 | 23 | 23 | ||
17 | 24 | SST consists of: | 24 | SST consists of: |
18 | 25 | 25 | ||
19 | 26 | * user actions and assertions (API) in Python | 26 | * user actions and assertions (API) in Python |
20 | 27 | * test case loader (generates/compiles scripts to unittest cases) | 27 | * test case loader (generates/compiles scripts to unittest cases) |
21 | 28 | * console test runner | 28 | * console test runner |
22 | 29 | * concurrent/parallel tests | ||
23 | 29 | * data parameterization/injection | 30 | * data parameterization/injection |
24 | 30 | * selectable output reports | 31 | * selectable output reports |
25 | 31 | * selectable browsers | 32 | * selectable browsers |
26 | @@ -40,304 +41,16 @@ | |||
27 | 40 | Install | 41 | Install |
28 | 41 | ----------- | 42 | ----------- |
29 | 42 | 43 | ||
31 | 43 | SST can be installed from `PyPI <http://pypi.python.org/pypi/sst>`_ using | 44 | SST can be installed or upgraded from `PyPI <http://pypi.python.org/pypi/sst>`_ using |
32 | 44 | `pip <http://www.pip-installer.org>`_:: | 45 | `pip <http://www.pip-installer.org>`_:: |
33 | 45 | 46 | ||
34 | 46 | pip install -U sst | 47 | pip install -U sst |
35 | 47 | 48 | ||
332 | 48 | For example, on an Ubuntu/Debian system, you could Install SST (system-wide) | 49 | |
333 | 49 | like this:: | 50 | -------------------------- |
334 | 50 | 51 | Official Documentation | |
335 | 51 | $ sudo apt-get install python-pip xvfb | 52 | -------------------------- |
336 | 52 | $ sudo pip install -U sst | 53 | |
337 | 53 | 54 | Please visit the official docs at: `http://testutils.org/sst <http://testutils.org/sst>`_ | |
338 | 54 | or with a `virtualenv`:: | 55 | |
339 | 55 | 56 | For the full `actions` reference, go directly to: `http://testutils.org/sst/actions.html <http://testutils.org/sst/actions.html>`_ | |
44 | 56 | $ sudo apt-get install python-virtualenv xvfb | ||
45 | 57 | $ virtualenv ENV | ||
46 | 58 | $ source ENV/bin/activate | ||
47 | 59 | (ENV)$ pip install sst | ||
48 | 60 | |||
49 | 61 | * note: `xvfb` is only needed if you want to run SST in headless mode | ||
50 | 62 | |||
51 | 63 | |||
52 | 64 | --------------------------- | ||
53 | 65 | Example SST test script | ||
54 | 66 | --------------------------- | ||
55 | 67 | |||
56 | 68 | a sample test case in SST:: | ||
57 | 69 | |||
58 | 70 | from sst.actions import * | ||
59 | 71 | |||
60 | 72 | go_to('http://www.ubuntu.com/') | ||
61 | 73 | assert_title_contains('Ubuntu') | ||
62 | 74 | |||
63 | 75 | |||
64 | 76 | ------------------------------------ | ||
65 | 77 | Running a test with SST | ||
66 | 78 | ------------------------------------ | ||
67 | 79 | |||
68 | 80 | Create a Python script (.py) file, and add your test code. | ||
69 | 81 | |||
70 | 82 | Then call your test script from the command line, using `sst-run`:: | ||
71 | 83 | |||
72 | 84 | $ sst-run mytest | ||
73 | 85 | |||
74 | 86 | * note: you don't add the .py extension to your test invocation | ||
75 | 87 | |||
76 | 88 | |||
77 | 89 | ----------------------------------- | ||
78 | 90 | Actions reference (sst.actions) | ||
79 | 91 | ----------------------------------- | ||
80 | 92 | |||
81 | 93 | Test scripts perform actions in the browser as if they were a user. | ||
82 | 94 | SST provides a set of "actions" (functions) for use in your tests. | ||
83 | 95 | These actions are defined in the following API: | ||
84 | 96 | |||
85 | 97 | * `Actions Reference <http://testutils.org/sst/actions.html>`_ | ||
86 | 98 | |||
87 | 99 | |||
88 | 100 | ------------------------------------ | ||
89 | 101 | Command line options for sst-run | ||
90 | 102 | ------------------------------------ | ||
91 | 103 | |||
92 | 104 | Usage: `sst-run <options> [testname]` | ||
93 | 105 | |||
94 | 106 | * Calling sst-run with testname(s) as arguments will just run | ||
95 | 107 | those tests. The testnames should not include '.py' at | ||
96 | 108 | the end of the filename. | ||
97 | 109 | |||
98 | 110 | * You may optionally create a data file for data-driven | ||
99 | 111 | testing. Create a '^' delimited txt data file with the same | ||
100 | 112 | name as the test, plus the '.csv' extension. This will | ||
101 | 113 | run a test using each row in the data file (1st row of data | ||
102 | 114 | file is variable name mapping) | ||
103 | 115 | |||
104 | 116 | Options:: | ||
105 | 117 | |||
106 | 118 | -h, --help show this help message and exit | ||
107 | 119 | -d DIR_NAME directory of test case files | ||
108 | 120 | -r REPORT_FORMAT report type: xml | ||
109 | 121 | -b BROWSER_TYPE select webdriver (Firefox, Chrome, PhantomJS, etc) | ||
110 | 122 | -j disable javascript in browser | ||
111 | 123 | -m SHARED_MODULES directory for shared modules | ||
112 | 124 | -q output less debugging info during test run | ||
113 | 125 | -V print version info and exit | ||
114 | 126 | -s save screenshots on failures | ||
115 | 127 | -x run browser in headless xserver (Xvfb) | ||
116 | 128 | --failfast stop test execution after first failure | ||
117 | 129 | --debug drop into debugger on test fail or error | ||
118 | 130 | --with-flags=WITH_FLAGS comma separated list of flags to run tests with | ||
119 | 131 | --disable-flag-skips run all tests, disable skipping tests due to flags | ||
120 | 132 | --extended-tracebacks add extra information (page source) to failure reports | ||
121 | 133 | --collect-only collect/print cases without running tests | ||
122 | 134 | --test run selftests (acceptance tests with django server) | ||
123 | 135 | |||
124 | 136 | |||
125 | 137 | -------------------- | ||
126 | 138 | Organizing tests | ||
127 | 139 | -------------------- | ||
128 | 140 | |||
129 | 141 | For logical organization of tests, you can use directories in your filesystem. | ||
130 | 142 | SST will recursively walk your directory tree and gather all tests for | ||
131 | 143 | execution. | ||
132 | 144 | |||
133 | 145 | For example, a simple test setup might look like:: | ||
134 | 146 | |||
135 | 147 | /selenium-simple-test | ||
136 | 148 | /mytests | ||
137 | 149 | foo.py | ||
138 | 150 | |||
139 | 151 | and you would call this from the command line:: | ||
140 | 152 | |||
141 | 153 | $ sst-run -d mytests | ||
142 | 154 | |||
143 | 155 | A more complex setup might look like:: | ||
144 | 156 | |||
145 | 157 | /selenium-simple-test | ||
146 | 158 | /mytests | ||
147 | 159 | /project_foo | ||
148 | 160 | /feature_foo | ||
149 | 161 | foo.py | ||
150 | 162 | /project_bar | ||
151 | 163 | feature_bar.py | ||
152 | 164 | feature_baz.py | ||
153 | 165 | /shared | ||
154 | 166 | module.py | ||
155 | 167 | utils.py | ||
156 | 168 | |||
157 | 169 | and you would still call this from the command like:: | ||
158 | 170 | |||
159 | 171 | $ sst-run -d mytests | ||
160 | 172 | |||
161 | 173 | SST will find all of the tests in subdirectories (including symlinks) and | ||
162 | 174 | execute them. SST won't look in directories starting with an underscore. This | ||
163 | 175 | allows you to put Python packages/modules directly in your test directories | ||
164 | 176 | if you want. A better option is to use the shared directory. | ||
165 | 177 | |||
166 | 178 | |||
167 | 179 | --------------------------------- | ||
168 | 180 | Using sst in unittest test suites | ||
169 | 181 | --------------------------------- | ||
170 | 182 | |||
171 | 183 | sst uses unittest test cases internally to wrap the execution of the script | ||
172 | 184 | and taking care of starting and stopping the browser. If you prefer to | ||
173 | 185 | integrate some sst tests into an existing unittest test suite you can use | ||
174 | 186 | SSTTestCase from runtests.py:: | ||
175 | 187 | |||
176 | 188 | from sst.actions import * | ||
177 | 189 | from sst import runtests | ||
178 | 190 | |||
179 | 191 | class TestUbuntu(runtests.SSTTestCase): | ||
180 | 192 | |||
181 | 193 | def test_ubuntu_home_page(self): | ||
182 | 194 | go_to('http://www.ubuntu.com/') | ||
183 | 195 | assert_title_contains('Ubuntu') | ||
184 | 196 | |||
185 | 197 | So, with the above in a file name test_ubuntu.py you can run the test with | ||
186 | 198 | (for example):: | ||
187 | 199 | |||
188 | 200 | python -m unittest test_ubuntu.py | ||
189 | 201 | |||
190 | 202 | `sst-run` provides an headless xserver via the `-x` option. `SSTTestCase` | ||
191 | 203 | provides the same feature (sharing the same implementation) via two class | ||
192 | 204 | attributes. | ||
193 | 205 | |||
194 | 206 | `xserver_headless` when set to `True` will start an headless server for each | ||
195 | 207 | test (and stop it after the test). If you want to share the same server | ||
196 | 208 | across several tests, set `xvfb`. You're then responsible for starting and | ||
197 | 209 | stopping this server (see `src/sst/xvfbdisplay.py` for details or | ||
198 | 210 | `src/sst/tests/test_xvfb.py` for examples. | ||
199 | 211 | |||
200 | 212 | |||
201 | 213 | -------------------- | ||
202 | 214 | Shared directory | ||
203 | 215 | -------------------- | ||
204 | 216 | |||
205 | 217 | SST allows you to have a directory called `shared` in the top level directory | ||
206 | 218 | of your tests, which is added to `sys.path`. Here you can keep helper modules | ||
207 | 219 | used by all your tests. `sst-run` will not run Python files in the `shared` | ||
208 | 220 | directory as tests. | ||
209 | 221 | |||
210 | 222 | By default SST looks in the test directory you specify to find `shared`, | ||
211 | 223 | alternatively you can specify a different directory using the `-m` command | ||
212 | 224 | line argument to `sst-run`. | ||
213 | 225 | |||
214 | 226 | If there is no `shared` directory in the test directory, then `sst-run` will | ||
215 | 227 | walk up from the test directory to the current directory looking for one. This | ||
216 | 228 | allows you to run tests just from a subdirectory without having to explicitly | ||
217 | 229 | specify where the shared directory is. | ||
218 | 230 | |||
219 | 231 | |||
220 | 232 | --------------------- | ||
221 | 233 | sst.config module | ||
222 | 234 | --------------------- | ||
223 | 235 | |||
224 | 236 | Inside tests you can import the `sst.config` module to know various things | ||
225 | 237 | about the current test environment. The `sst.config` module has the following | ||
226 | 238 | information:: | ||
227 | 239 | |||
228 | 240 | from sst import config | ||
229 | 241 | |||
230 | 242 | # is javascript disabled? | ||
231 | 243 | config.javascript_disabled | ||
232 | 244 | |||
233 | 245 | # which browser is being used? | ||
234 | 246 | config.browser_type | ||
235 | 247 | |||
236 | 248 | # full path to the shared directory | ||
237 | 249 | config.shared_directory | ||
238 | 250 | |||
239 | 251 | # full path to the results directory | ||
240 | 252 | config.results_directory | ||
241 | 253 | |||
242 | 254 | # flags for the current test run | ||
243 | 255 | config.flags | ||
244 | 256 | |||
245 | 257 | # A per test cache. A dictionary that is cleared at the start of each test. | ||
246 | 258 | config.cache | ||
247 | 259 | |||
248 | 260 | ------------------------ | ||
249 | 261 | Disabling Javascript | ||
250 | 262 | ------------------------ | ||
251 | 263 | |||
252 | 264 | If you need to disable Javascript for an individual test you can do it by | ||
253 | 265 | putting the following at the start of the test:: | ||
254 | 266 | |||
255 | 267 | JAVASCRIPT_DISABLED = True | ||
256 | 268 | |||
257 | 269 | |||
258 | 270 | -------------------------------- | ||
259 | 271 | Development on Ubuntu/Debian | ||
260 | 272 | -------------------------------- | ||
261 | 273 | |||
262 | 274 | * SST is primarily being developed on Linux, specifically Ubuntu. It should | ||
263 | 275 | work fine on other platforms, but any issues (or even better - patches) | ||
264 | 276 | should be reported on the Launchpad project. | ||
265 | 277 | |||
266 | 278 | * Get a copy of SST Trunk, create and activate a virtualenv, install requirements, | ||
267 | 279 | and run examples/self-tests from the dev branch:: | ||
268 | 280 | |||
269 | 281 | $ sudo apt-get install bzr python-virtualenv xvfb | ||
270 | 282 | $ bzr branch lp:selenium-simple-test | ||
271 | 283 | $ cd selenium-simple-test | ||
272 | 284 | $ virtualenv ENV | ||
273 | 285 | $ source ENV/bin/activate | ||
274 | 286 | (ENV)$ pip install -r requirements.txt | ||
275 | 287 | (ENV)$ ./sst-run -d examples | ||
276 | 288 | |||
277 | 289 | * (optional) Install test dependencies and run SST's internal unit tests:: | ||
278 | 290 | |||
279 | 291 | (ENV)$ pip install mock nose pep8 | ||
280 | 292 | (ENV)$ nosetests --match ^test_.* --exclude="ENV|testproject|selftests" | ||
281 | 293 | |||
282 | 294 | * (optional) Install `django` and run SST's internal test application with | ||
283 | 295 | acceptance tests | ||
284 | 296 | |||
285 | 297 | (ENV)$ pip install django | ||
286 | 298 | (ENV)$ ./sst-run --test -x | ||
287 | 299 | |||
288 | 300 | * `Launchpad Project <https://launchpad.net/selenium-simple-test>`_ | ||
289 | 301 | |||
290 | 302 | * `Browse the Source (Trunk) | ||
291 | 303 | <http://bazaar.launchpad.net/~canonical-isd-qa/selenium-simple-test/trunk/files>`_ | ||
292 | 304 | |||
293 | 305 | * To manually setup dependencies, SST uses the following non-stdlib packages: | ||
294 | 306 | |||
295 | 307 | * selenium | ||
296 | 308 | * testtools | ||
297 | 309 | * django (optional - needed for internal self-tests only) | ||
298 | 310 | |||
299 | 311 | ------------------------ | ||
300 | 312 | Running the examples | ||
301 | 313 | ------------------------ | ||
302 | 314 | |||
303 | 315 | SST source code repository and package download contain some trivial example | ||
304 | 316 | scripts. | ||
305 | 317 | |||
306 | 318 | You can run them from your local sst directory like this:: | ||
307 | 319 | |||
308 | 320 | $ ./sst-run -d examples | ||
309 | 321 | |||
310 | 322 | |||
311 | 323 | -------------------------- | ||
312 | 324 | Running the self-tests | ||
313 | 325 | -------------------------- | ||
314 | 326 | |||
315 | 327 | SST source code repository and package download contain a set of self-tests | ||
316 | 328 | based on an included test Django project. | ||
317 | 329 | |||
318 | 330 | You can run the suite of self-tests (and the test Django server) from your | ||
319 | 331 | local branch like this:: | ||
320 | 332 | |||
321 | 333 | $ ./sst-run --test | ||
322 | 334 | |||
323 | 335 | |||
324 | 336 | ----------------- | ||
325 | 337 | Related links | ||
326 | 338 | ----------------- | ||
327 | 339 | |||
328 | 340 | * `Selenium Project Home <http://selenium.googlecode.com>`_ | ||
329 | 341 | * `Selenium WebDriver (from 'Architecture of Open Source Applications') | ||
330 | 342 | <http://www.aosabook.org/en/selenium.html>`_ | ||
331 | 343 | * `Python Unittest <http://docs.python.org/library/unittest.html>`_ | ||
340 | 344 | 57 | ||
341 | === modified file 'docs/changelog.rst' | |||
342 | --- docs/changelog.rst 2013-07-30 13:55:45 +0000 | |||
343 | +++ docs/changelog.rst 2013-07-31 18:03:25 +0000 | |||
344 | @@ -9,6 +9,10 @@ | |||
345 | 9 | Official Releases: | 9 | Official Releases: |
346 | 10 | ------------------ | 10 | ------------------ |
347 | 11 | 11 | ||
348 | 12 | version **0.2.5** (under development) | ||
349 | 13 | ************************************* | ||
350 | 14 | |||
351 | 15 | |||
352 | 12 | version **0.2.4** (2013 July 30) | 16 | version **0.2.4** (2013 July 30) |
353 | 13 | ******************************** | 17 | ******************************** |
354 | 14 | 18 | ||
355 | 15 | 19 | ||
356 | === modified file 'docs/releasing.rst' | |||
357 | --- docs/releasing.rst 2013-05-23 10:11:12 +0000 | |||
358 | +++ docs/releasing.rst 2013-07-31 18:03:25 +0000 | |||
359 | @@ -1,7 +1,10 @@ | |||
361 | 1 | SST Release Instructions | 1 | ============================ |
362 | 2 | SST Release Instructions | ||
363 | 3 | ============================ | ||
364 | 2 | 4 | ||
367 | 3 | Instructions for releasing SST to PyPI from Launchpad Trunk | 5 | --------------------------------------------------------------- |
368 | 4 | ----------------------------------------------------------- | 6 | Instructions for releasing SST to PyPI from Launchpad Trunk |
369 | 7 | --------------------------------------------------------------- | ||
370 | 5 | 8 | ||
371 | 6 | * get a branch of SST trunk: | 9 | * get a branch of SST trunk: |
372 | 7 | 10 | ||
373 | @@ -29,17 +32,15 @@ | |||
374 | 29 | 32 | ||
375 | 30 | $ bzr push lp:selenium-simple-test | 33 | $ bzr push lp:selenium-simple-test |
376 | 31 | 34 | ||
377 | 32 | * generate actions doc: | ||
378 | 33 | |||
379 | 34 | under /docs, run: | ||
380 | 35 | |||
381 | 36 | $ python make_actions_rst.py | ||
382 | 37 | |||
383 | 38 | * generate HTML documentation: | 35 | * generate HTML documentation: |
384 | 39 | 36 | ||
385 | 40 | * install sphinx (`$ sudo apt-get install python-sphinx`) | 37 | * install sphinx (`$ sudo apt-get install python-sphinx`) |
386 | 41 | 38 | ||
388 | 42 | * run `make_actions_rst.py` under /docs, which will create `actions.rst` | 39 | * generate `actions.rst` doc: |
389 | 40 | |||
390 | 41 | under /docs, run: | ||
391 | 42 | |||
392 | 43 | $ python make_actions_rst.py | ||
393 | 43 | 44 | ||
394 | 44 | * go up to the main SST directory and run: | 45 | * go up to the main SST directory and run: |
395 | 45 | 46 | ||
396 | 46 | 47 | ||
397 | === modified file 'src/sst/__init__.py' | |||
398 | --- src/sst/__init__.py 2013-07-30 13:55:45 +0000 | |||
399 | +++ src/sst/__init__.py 2013-07-31 18:03:25 +0000 | |||
400 | @@ -18,7 +18,7 @@ | |||
401 | 18 | # | 18 | # |
402 | 19 | 19 | ||
403 | 20 | 20 | ||
405 | 21 | __version__ = '0.2.4' | 21 | __version__ = '0.2.5dev' |
406 | 22 | 22 | ||
407 | 23 | DEVSERVER_PORT = 8120 # django devserver for internal acceptance tests | 23 | DEVSERVER_PORT = 8120 # django devserver for internal acceptance tests |
408 | 24 | 24 |
Would be worth adding the header in docs/changelog.rst no ?