Lsseq

Latest version: v3.0.2

Safety actively analyzes 623936 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

3.0.2

The option `--prependPathRel` should never have printed "./" at the head of any line of output. It's redundant, clutters up the output, and doesn't add any helpful information. However the presence of "./" in a line of output up until this release was totally harmless apart from aesthetic considerations.

Therefor this is a design-bug fix, and with this fix `lsseq --recursive --prependPathRel` and `lsseq --recursive --prependPathRel *` (i.e. with the globbing wildcard) NOW produce the exact same results in any given directory from which the above two commands are run.

Stripping "./" from the head of the relative path will not break any scripts that might be using this option, because the path with or without "./" refers to the exact same set of files.

(Note: `v3.0.1` missed adding the bugfix for `--prepentPathRel` to cache and movie sequences, as well as when outputting in a different `--format` (like `nuke`, or `glob`) when using `--prepandPathRel`. This release fixes that oversight.)

3.0.1

The option `--prependPathRel` should never have printed "./" at the head of any line of output. It's redundant, clutters up the output, and doesn't add any helpful information. However the presence of "./" in a line of output up until this release was totally harmless apart from aesthetic considerations.

Therefor this is a design-bug fix, and with this fix `lsseq -R -P` and `lsseq -R -P *` (i.e. with the globbing wildcard) NOW produce the exact same results in any given directory from which `lsseq` is run.

Stripping "./" from the head of the relative path will not break any scripts that might be using this option, because the path with or without "./" refers to the exact same set of files.

3.0.0

Anyway, upping to `v3.0.0` make it more obvious that there are some details (when installing) that need to be paid attention to. For example, possibly rebuilding `/usr/local/venv` with a version of `python3>=3.7`, and reinstalling `lsseq`, `renumseq`, etc. again.

Now `lsseq` is able to trap `stderr` output from running `ls`, and supressing the message if `--silent` was invoked on the command line.

Also, we grab the error codes from the call to `ls` bringing us to the next point...

Better ERROR codes and warning messages overall.

Better error handling is now provided and `lsseq` returns different error codes, as such:


EXIT_NO_ERROR = 0 Clean exit.
EXIT_LS_ERROR = 1 A call to 'ls' returned an error code.
EXIT_ARGPARSE_ERROR = 2 A bad option was passed to lsseq. Exit lsseq.
EXIT_LSSEQ_SOFTLINK_WARNING = 4 warning - broken softlink found
EXIT_LSSEQ_PADDING_WARNING = 8 warning - two images with same name, same frame-num, but diff padding


Even better, those error codes above are combined bitwise to return as much information as possible.

For example, an error code of `12` means we got a warning of a broken softlink AND we found more than one file in a sequence, with the same frame-number, but different frame-number-padding. These codes are returned regardless of whether or not `--silent` or `--quiet `were invoked.

Also, we now have improved warning messages in both information and clarity.

2.7.1

Zero-padding was not being enforced by the library (`dateparser`) which was being used to parse the date passed to `--onlyShow`. This is fixed now to enforce zero padding in the month, days, minutes & seconds. Eg. Before this fix `--onlyShow since 200731` would have listed sequences with modification dates after March 1 2007, instead of July 31, 2020, which it NOW correctly does, as `200731` should be interprted as YY MM DD, and not YYYY M D as the dateparser library was doing.

Also, slightly better `--help` output was added.

2.7.0

$ cd tests/testdir/pdir/
$ source custom.touch.images
$ lsseq --globalSortByTime --noErrorLists --recursive --prependPathRel -t -r --time median
./p01_dir/p02B_dir/p01B_median1_v01.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v02.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v03.[08-12].jpg
./p01_dir/p01_median2_v01.[08-12].jpg
./p01_dir/p01_median2_v02.[08-12].jpg
./p01_dir/p01_median2_v03.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v01.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v02.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v03.[08-12].jpg
./p_median4_v01.[08-12].jpg
./p_median4_v02.[08-12].jpg
./p_median4_v03.[08-12].jpg
./p02_dir/p02_median5_v01.[08-12].jpg
./p02_dir/p02_median5_v02.[08-12].jpg
./p02_dir/p02_median5_v03.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v01.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v02.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v03.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v01.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v02.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v03.[08-12].jpg

$ lsseq --globalSortByTime --noErrorLists --recursive --prependPathRel -t -r --time oldest
./p02_dir/p02_median5_v03.[08-12].jpg
./p02_dir/p02_median5_v01.[08-12].jpg
./p02_dir/p02_median5_v02.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v03.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v01.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v02.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v03.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v01.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v02.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v03.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v01.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v02.[08-12].jpg
./p01_dir/p01_median2_v03.[08-12].jpg
./p01_dir/p01_median2_v01.[08-12].jpg
./p01_dir/p01_median2_v02.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v03.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v01.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v02.[08-12].jpg
./p_median4_v03.[08-12].jpg
./p_median4_v01.[08-12].jpg
./p_median4_v02.[08-12].jpg

$ lsseq --globalSortByTime --noErrorLists --recursive --prependPathRel -t -r --time newest
./p_median4_v02.[08-12].jpg
./p_median4_v03.[08-12].jpg
./p_median4_v01.[08-12].jpg
./p02_dir/p02_median5_v02.[08-12].jpg
./p02_dir/p02_median5_v03.[08-12].jpg
./p02_dir/p02_median5_v01.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v02.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v03.[08-12].jpg
./p02_dir/p02A_dir/p02A_median6_v01.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v02.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v03.[08-12].jpg
./p02_dir/p02B_dir/p02B_median7_v01.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v02.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v03.[08-12].jpg
./p01_dir/p02B_dir/p01B_median1_v01.[08-12].jpg
./p01_dir/p01_median2_v02.[08-12].jpg
./p01_dir/p01_median2_v03.[08-12].jpg
./p01_dir/p01_median2_v01.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v02.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v03.[08-12].jpg
./p01_dir/p01A_dir/p01A_median3_v01.[08-12].jpg

You would almost never see such discrepancies between `oldest`, `newest` or `median` when listing versioned sub-directories within a render directory, but the time stamps on those files above were hand tweaked to really push the test and make sure that the sequences were printing out in the correct order. If you want to double check that it's correct, then try running this while your current working directory is still pdir:

$ ls -t -r -l -R

And compare the results!

Enjoy!

2.6.1

Includes a slightly improved default help message (to show -h or --help is available). More importantly moved importing 3 modules into a small section of code that uses them in main(), which significantly speeds up loading and running lsseq. Those 3 modules are heavy and only needed when calling the --onlyShow option. This speedup is most noticeable on slower-older machines, however should speed it up on all platforms.

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.