-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG.txt
493 lines (336 loc) · 18.3 KB
/
CHANGELOG.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
===============================
pyutilib.virtualenv CHANGELOG
===============================
-------------------------------------------------------------------------------
4.6
-------------------------------------------------------------------------------
- Under development.
-------------------------------------------------------------------------------
4.5.1
-------------------------------------------------------------------------------
- Bug fix to ensure that the proper branch is checked out.
-------------------------------------------------------------------------------
4.5
-------------------------------------------------------------------------------
- Adding support for references to github repositories. For example:
root=https://github.com/PyUtilib/pyutilib.git#pyomo references the PyUtilib
github repository with branch 'pyomo'.
-------------------------------------------------------------------------------
4.4
-------------------------------------------------------------------------------
- Upgrading to virtualenv 1.11.6
- Updating the update command so that it first tries to run lbin and
lpython to find pip and python before falling back on the system path.
- Updating 'update' script to pass named arguments to rebuild.py
-------------------------------------------------------------------------------
4.3.4
-------------------------------------------------------------------------------
- Added a guard to prevent users from running vpy_create using an old
version of virtualenv.
- Recreating vpy_install with virtualenv 1.11.4
- Patch to fix problem where vpy_install failed due to syntax error
when running in offline mode.
- Cleaning up deprecated functions.
-------------------------------------------------------------------------------
4.3
-------------------------------------------------------------------------------
- A rework of the vpy_install logic to work with virtualenv 1.11.
This change bundles wheel files for pip, setuptools and virtualenv.
These are stored in a zip file, which is included in the
vpy_install.py file.
-------------------------------------------------------------------------------
4.2
-------------------------------------------------------------------------------
- Fixed bugs when extra_env is None
- Fixes for preventing distribute from patching setuptools
- Setting upper limit on virtualenv for pyutilib.virtualenv
-------------------------------------------------------------------------------
4.1
-------------------------------------------------------------------------------
- Hard-coding version of virtualenv used in the installer.
-------------------------------------------------------------------------------
4.0.2
-------------------------------------------------------------------------------
- Removing the explicit installation of distribute.
-------------------------------------------------------------------------------
4.0.1
-------------------------------------------------------------------------------
- Forcing the installation of distribute instead of setuptools
-------------------------------------------------------------------------------
4.0
-------------------------------------------------------------------------------
- Fixing virtualenv so that it once again picks up the system site
packages by default. This was accidentally broken when we upgraded
the underlying virtualenv version to >1.6.4.
- Removing the —update and —offline options.
- Changing the package management to detect offline/online mode.
- Removed the use of monkey patching for pip/setuptools installation.
- Changed the order so setuptools or distribute come before pip.
- Deferring resolution of virtualenv binaries (python, easy_install,
pip) until they are positively found (coopr —with-extras was
failing because the binaries were not installed the first time
the installer looked, and it was defaulting to the Windows binary
naming).
- Adding a fallback from easy_install to pip.
-------------------------------------------------------------------------------
3.3
-------------------------------------------------------------------------------
- Letting PIP fall back on easy_install (if PIP fails, e.g., for packages
that only distribute eggs)
- Overhaul to filenaming conventions within the source code:
renaming installer.py → vpy_create.py
updating vpy_create() to embed useful comments at the beginning of the generated installer.
scripts/vpy_install now points to the main pyutilib/virtualenv/vpy_install.py
updating vpy_create so that it can run without having to install pyutilib.virtualenv
- When pre-installing, force pip to ignore already-installed packages
- Switching vpy_install to use PIP instead of easy_install
- Adding the --pypi-url option to redirect the virtual environment
setup process to a PyPI mirror
-------------------------------------------------------------------------------
3.2
-------------------------------------------------------------------------------
- Disabling setuptools for Python 3.x
- Updating installer with new version of virtualenv.
- Adding logic to manage the installation of distribute.
-------------------------------------------------------------------------------
3.1.1
-------------------------------------------------------------------------------
- Update to a new version of virtualenv.
- Forcing the inclusion of odict.py, to ensure that this script
works for both python2 and python3.
-------------------------------------------------------------------------------
3.1
-------------------------------------------------------------------------------
- Various updates to the create_setup script
. Removed logic for per-package MSI installers
. Bug fix in directory specification
- Updated autodist script for the WST distribution
- Update virtualenv version
-------------------------------------------------------------------------------
3.0
-------------------------------------------------------------------------------
- Many changes to support vpy_install under Python 3.x
. Changed print commands to be functions
. Changed exception handling to use sys.exc_info
. Used urllib instead of urllib2
. Import StringIO from io instead of StringIO
. Used collections.OrderedDict? by default, if it is available
. Translated output of urllib.open and subprocess.Popen
- Bug fix: use utf-8 as the encoding if sys.stdout.encoding is None.
- Explicitly converting parsed options into str() — as unicode strings
can cause errors in some versions of Python (notably, 2.6.1 and 2.6.2)
-------------------------------------------------------------------------------
2.9
-------------------------------------------------------------------------------
- Adding logic to allow an exit option.
- Adding message when installer aborts.
- Adding additional output when not aborting.
- Added the autodist.py utility.
- Added fixes to the autodist script for Windows compatibility.
-------------------------------------------------------------------------------
2.8
-------------------------------------------------------------------------------
- Updating vpy_install to make sure the user doesn't try to install the
virtualenv on top of the Python interpreter they are curring running.
- Adding debugging flag for vpy_install execution.
-------------------------------------------------------------------------------
2.7
-------------------------------------------------------------------------------
- Updating the installer logic to be 'future proof'. Now, if we add
new configuration attributes, they will be ignored. This allows
us to create releases, update *.ini files, and not worry about
whether the old installers still work…
- Defer the reading of config files until after ZIP files are opened up.
- Allow the —release option to be used with —preinstall.
-------------------------------------------------------------------------------
2.6
-------------------------------------------------------------------------------
- Updates to get vpy_install closer to being compatible with Python 3.x.
- Update to the create-setup command to properly install to a python directory
instead of the root C:
- Adding another function to control the process of getting packages.
- Changes to add a 'branch' option to configurations. When used with —trunk,
this checks out the specified branch in the 'branches' directory.
- Adding a 'version' component to configurations, which can be used to
specify a string that is evaluated to verify the Python version that
is used. For example:
version=sys.version ≥ (2,5)
-------------------------------------------------------------------------------
2.5
-------------------------------------------------------------------------------
- Adding create_setup script to create a Windows installer
- Updates due to a new version os virtualenv
- Adding the ability to define config files that reference other config files.
- The --without-externals flag ignores the external links.
- Reformatting with reindent.
- Disabled the use of subversion to guess revision numbers on windows.
- Allow 'distribute' and 'pip' to be included in the distribution. This
facilitates the installation on windows.
-------------------------------------------------------------------------------
2.4.1
-------------------------------------------------------------------------------
- Adding some diagnostic output for the Python executable used
to create the virtual Python environment.
-------------------------------------------------------------------------------
2.4
-------------------------------------------------------------------------------
- Disabling the use of pythonw. This doesn't reliably work ... perhaps
because of antivirus software. It appears that pythonw.exe is a known
target for viruses.
- Disabling the filtering of TODO lines while generating the bootstrap script.
This has the unfortunate feature that it can muck with the uuencoded data that
the bootstrap script includes.
- Adding support for a 'platform' option, which is a regular
expression that controls package installation.
- Updates to allow the -v option to create verbose output
from easy_install, and to flush debugging output
before subprocesses are executed.
- Setting the directory in which easy_installed is executed ... to
fix a problem installing a package in a directory with the same name.
-------------------------------------------------------------------------------
2.3
-------------------------------------------------------------------------------
- Reworking the localization logic to (a) print warnings when the
files are missing and (b) localize files in the Scripts directory if it
exists.
- Adding the --always-copy flag to easy_install
- Adding an option to force the checkout during preinstall, regardless of the
current installation.
- Adding the --exclude-scripts option to easy_install to avoid a
conflict with the fact that we're already using easy_install when we
download setuptools.
- Force the use of pythonw on MS Windows.
-------------------------------------------------------------------------------
2.2
-------------------------------------------------------------------------------
- Added the --add-package option, which is used to specify a source package
that is installed during the setup of the virtual Python environment.
- Removing unnecessary files from the preinstall ZIP file.
-------------------------------------------------------------------------------
2.1
-------------------------------------------------------------------------------
- Changes to disable version guessing in offline installation.
-------------------------------------------------------------------------------
2.0.1
-------------------------------------------------------------------------------
- Forcing the creation of the bin directory on MS Windows.
-------------------------------------------------------------------------------
2.0
-------------------------------------------------------------------------------
- Perform error checking to confirm that the subversion command
can be executed.
- Add error check when subversion is not available but it is necessary to
install a package.
- Adding logic to handle installation errors gracefully. Errors result in
immediate termination of the installation logic, and they return a
nonzero error code.
- Adding the easy_install '--no-deps' option for offline installation.
- Add logic to gracefully terminate when a user does not have
permissions needed to create the target directory.
- Adding the --release option to specify subversion checkouts of
release branches. Changed default checkout to use a pypi.ini
configuration file.
- Adding a --source option to vpy_install, which allows the specification of a
source directory.
- Disabling PYTHONHOME if it is defined.
-------------------------------------------------------------------------------
1.5.1
-------------------------------------------------------------------------------
- Fix to recognize stable directories that do not contain versioned
trunk branches.
-------------------------------------------------------------------------------
1.5
-------------------------------------------------------------------------------
- Adding timing information for checkouts and installation.
- Reorganizing the configuration for offline installation. Now, the
config file generated during installation is used, and this config
file is setup without executing the logic in guess_versions (which
isn't needed, really).
- Disabling the '-p' option. This option is a shortcut to
'.python', so it isn't strictly necessary. Further, typing '-preinstall'
confuses the user into thinking that the 'reinstall' command cannot
be found.
- Rework of virtualenv bootstrap script. This looks like it resolves
an outstanding issue with vpy_install: when the preinstall option was
used, this script needed to bootstrap the installation of setuptools.
-------------------------------------------------------------------------------
1.4.3
-------------------------------------------------------------------------------
- Update to package README files to point to the new PyUtilib? mailing lists.
-------------------------------------------------------------------------------
1.4.2
-------------------------------------------------------------------------------
- Rework of how the easy_install command is configured. When this is installed
as an executable, then we can't call it with python.
- Attempting to fix portability issue where easy_install has a *.exe extension
that needs to be explicitly used.
-------------------------------------------------------------------------------
1.4.1
-------------------------------------------------------------------------------
- Changed the Python path used to execute easy_install. This was
needed to install with Jython.
- Adding a Python version check to verify that we can
use the 'timeout' option for urlopen().
-------------------------------------------------------------------------------
1.4
-------------------------------------------------------------------------------
- Changing the semantics of the --config option. By default, this
clears the initial configuration information. The --keep-config option
can be used to retain this config information.
- Using subversion for listing subversion web directories. This
eliminates various problems accessing ssl authenticated sites from
behind a proxy.
NOTE: there remains an issue getting to https config files from behind
a proxy, but that will only impact developers. Thus, we'll worry about
that issue when we really need to.
- Changing the behavior of guess_version. Now, we verify that the
branch directories exist before get information on them.
Changed the semantics of the --config option. Now, if a INI file is
specified, but not available, then the application config_file will
be used to search for this file.
-------------------------------------------------------------------------------
1.3.1
-------------------------------------------------------------------------------
- Restructuring repository access to delay the processing of
repository versions until the last possible moment.
-------------------------------------------------------------------------------
1.3
-------------------------------------------------------------------------------
- For offline installation, explicitly add setuptools and pip
- Extension to allow repositories to have a specified revision
- Extension to specify repositories that are not installed within
virtual Python; these are used to define a repository with auxilliary
directories.
- Reworked the installer logic to find the package root as a separate
step from the installation process.
- Changed the syntax for specifying auxdirs; this should avoid conflicts
with software package names that contain '_' characters.
- Added support for a user-specified config file, which may be a URL that
is loaded.
- Removed support for the '--forum' options, which are Coopr-specific.
- Updates to work with virtualenv 1.4.2, which includes a new install_pip
function
-------------------------------------------------------------------------------
1.2
-------------------------------------------------------------------------------
- Bug fix for guess_release() when no release revision is available.
- Renamized the 'dos_cmd' section to 'localize'.
- Update to use /tmp instead of '.' for the temporary directory (on non-windows
platforms).
-------------------------------------------------------------------------------
1.1
-------------------------------------------------------------------------------
- Reworked the main() function to catch exceptions in a graceful manner.
- Allow the configuration data to be processed with string templates, and
template variables are filled using environment variables.
- Write out a config file when installing, which is then used to simplify
the update process.
- Reworked the rmtree() function to enable more robust file deletions on
MS Windows.
- Added a 'tests' directory, with a README.txt that describes tests that
need to be manually applied.
-------------------------------------------------------------------------------
1.0
-------------------------------------------------------------------------------
- Initial release of PyUtilib package to support customization of
VirtualEnv installers.