Exiv2: Exiv2 has moved to GitHub (1 comment)
The Exiv2 Project has moved to https://github.com/exiv2/exiv2. All future discussion and issues should be reported on GitHub.
Added by Robin Mills almost 3 years ago
The Exiv2 Project has moved to https://github.com/exiv2/exiv2. All future discussion and issues should be reported on GitHub.
Added by Robin Mills over 5 years ago
To be discussed on May 5 and 6 at the "Exiv2 Developer's Meeting" in England.
This project is mostly security fixes.
There are very significant improvements in the build and test architecture.
The project code is on GitHub. https://github.com/Exiv2/exiv2/projects
1) Why did the code-size spike from 100k to 120k in July 2017? Closed
OpenHub mystery. May 2017: 113961 April 2017: 121196~/gnu/github/exiv2/exiv2 $ git status | grep branch ; finder "*pp | xargs wc | tail -1
2) What's to be done about the duplicated code in tags.cpp and tags_int.cpp?
3) Why did we migrate canonmn.cpp to canonmn_int.cpp?
4) Unit tests discussion
5) Using safe_op.hpp in elderly versions of MSVC (such as 2005)
6) Remove unwanted test/data files from the repos (eg test/data/bugfixes-test.out)
7) Announce that we plan to deprecate the VIDEO and EPS code in v0.28
8) Remove 'using namespace' in all code.
9) Licensing
10) Binary Output
11) Throwing exceptions from BasicIO::read()
12) Why was printStructure() added? (#1245)
13) Project Tool Discussion (Redmine, GitHub, CMake, BuildServer) https://github.com/Exiv2/exiv2/issues/101
Before the meeting, I'll review 0.27 open/closed bugs. For sure there will be other matters to discuss.
Group | Topic | Scope | Effort | Total |
Major | User Support | Redmine and Github | 25% | 55% |
Lens recognition | src/*_mn.cpp and ~/.exiv2 | 10% | ||
Build Engineering | CMake, Autotools and MSVC | 10% | ||
Jenkins Build Server | daily, weekly and monthly builds | 5% | ||
Test Harness | bash and python scripts | 5% | ||
Normal | Sample Applications | exiv2, exifprint, exiv2json,... | 5% | 35% |
I/O | BasicIO, FileIO, MemIO, RemoteIO,... | 5% | ||
Tiff Parser | Tiff, Exif, Raw and MakerNote Parsers | 5% | ||
Image formats | TIFF, JPEG, PNG,... | 5% | ||
Metadata formats | Exif, IPTC, XMP, ICC | 5% | ||
Release Engineering | Releases, website, documentation,... | 5% | ||
Security/Fuzzing | Parsing, arithmetic, memory, threading | 5% | ||
Minor | Project Management | Redmine | 5% | 10% |
Miscellaneous | Unexpected Issues, Licensing | 3% | ||
Video and EPS formats | QT, AI,... | 1% | ||
Localisation | po/*.po files | 1% |
1 Improved raw image code and test (#992) GSoC
2 Update to latest Adobe XMPsdk (#941)
3 Coverity Scan (#883)
4 Unified Metadata Container (#585)
5 Harden or remove the video code (#1068)
6 Additional image formats.
6.1) WebM: #1048
6.2) multi-page tiff: #1124
6.3) BigTiff: #1186
6.4) HDR: #885
6.5) SVG: #1086
6.6) PDF: #1138
6.7) CR3: https://github.com/Exiv2/exiv2/issues/236
6.8) IIQ: #1342
7 Build projects:
7.1) Mobile (iOS and Android) build and test support GSoC
7.2) C++11 #1188
7.3) Additional MSVC support: #1174
8 Other Feature Requests
8.1) Editing thumbnails
8.2) Support for thumbnails embedded in IPTC and XMP
8.3) Enhanced Lens Recognition (#1034)
8.4) RemoteIO Object with Memory Mapping (#1245)
8.5) mpfTagInfo in ExifTags::taglist (#1337)
8.6) Turbo TimeStamp Editor (http://dev.exiv2.org/boards/3/topics/3004)
8.7) PNG Metadata (in addition to Exif, XMP and IPTC) https://github.com/Exiv2/exiv2/issues/147
8.8) Refactor 64bit IO http://dev.exiv2.org/issues/1292#note-7
8.9) More JSON support discussion
8.10) Remove Video and EPS code discussion
8.11) RedBalance and Levels http://dev.exiv2.org/boards/3/topics/3108
Google sponsor students to work on approved open-source projects for 12 weeks during the summer vacation. I would like to recruit two GSoC students to work on the raw and mobile tasks. I'd like students to work on those tasks for the following reasons:
1) The projects are well defined and isolated.
2) Mentoring/supervision demands should be modest.
3) No complex dependencies.
4) Allows me to have sufficient time to support users.
Added by Robin Mills about 6 years ago
v0.26 is a "maintenance" release of Exiv2. The back-log of open issues has been cleared. Typical response time for new Issues or Forum Questions is hours. There are more engineers in the team. Many new features have been added and expanded. Roadmap: http://dev.exiv2.org/projects/exiv2/roadmap
Presentation to LGM (Libre Graphics Meeting) in Rio on 2017-04-22: https://www.youtube.com/watch?v=3Fv57Lbhmqg
There are 4 active "target versions" in Redmine:
Target | About this target | Redmine | Features | Progress | Status Summary |
0.26 | back-log of issues/tasks for this release | 100% | 100% | 100% | Released |
0.27 | Issues deferred due to lack of time and engineers | 63 Mostly requests | |||
1.0 | Future feature back-log | 28 Requests | |||
Review | Defunct. Elderly Issues to close, solve, or defer to 1.0 or 0.27 | All closed |
Calculations for Progress and Features are performed below. Redmine uses an unknown method that involves task estimate and %done.
1 | #1168 | 5 | 100% | 5.00 | User support during v0.26 development |
2 | #1041 | 5 | 100% | 5.00 | CMake toolchain for windows |
3 | #1111 | 3 | 100% | 3.00 | The web pages could use an overhaul |
4 | #1109 | 3 | 100% | 3.00 | User ability to request a build from Jenkins |
5 | #1074 | 3 | 100% | 3.00 | ICC Profile in APP2 segment. |
6 | #1034 | 3 | 100% | 3.00 | Camera accessory overflow file |
7 | #1108 | 2 | 100% | 2.00 | Recursively dump sub-files of an image |
8 | #1199 | 2 | 100% | 2.00 | WebP file support |
9 | #1236 | 2 | 100% | 2.00 | Build Exiv2 on MinGW using CMake |
10 | #1057 | 1 | 100% | 1.00 | Implement target/modifier - (stdin/stdout) for exiv2 options -i (insert) and -e (extract) |
11 | #1177 | 1 | 100% | 1.00 | Resolve issues in target "Review" |
12 | #1187 | 1 | 100% | 1.00 | Crash while reading in parallel threads |
13 | #1193 | 1 | 100% | 1.00 | XMP Specification November 2014 updates |
14 | #1190 | 1 | 100% | 1.00 | Support for CRS and CRSS XMP namespace and properties |
15 | #1243 | 1 | 100% | 1.00 | Improved JPEG 2000 Support |
Total: | 34 | 100% | 34.00 |
Effort is a guess about the work required (story points). Status is recorded in the associated issue.
Forecast is Feature Complete. Release processes such as bug hunting, localisation and change/code review take months.
Target: | 1.0 | 0.27 | 0.26 | |||||||||
Date: | Total | Total | Total | Closed | Open | Resolved | Remaining | Redmine % | Unassigned | Progress % | Forecast | Comment |
2017-04-28 | 28 | 0/63 | 235 | 225 | 0 | 0 | 0 | 100% | 0 / 0% | 100% | Released | |
2017-03-18 | 27 | 0/61 | 229 | 225 | 4 | 2 | 2 | 99% | 0 / 0% | 100% | Release Candidate 2 | |
2016-11-18 | 28 | 0/48 | 211 | 208 | 3 | 2 | 1 | 100% | 0 / 0% | 100% | ||
2016-11-05 | 28 | 0/47 | 208 | 205 | 3 | 2 | 1 | 99% | 0 / 0% | 100% | ||
2016-10-23 | 28 | 0/47 | 204 | 201 | 3 | 2 | 1 | 99% | 0 / 0% | 100% | Release Candidate 1 | |
2016-10-15 | 28 | 0/45 | 203 | 195 | 8 | 4 | 4 | 98% | 0 / 0% | 98% | JP2 and EXV_HAVE_MMAP | |
2016-10-06 | 28 | 0/44 | 200 | 192 | 8 | 3 | 5 | 97% | 0 / 0% | 98% | MinGW build/test issues | |
2016-09-29 | 28 | 0/43 | 197 | 189 | 8 | 3 | 5 | 97% | 0 / 0% | 97% | Bug Hunting | |
2016-09-22 | 27 | 0/42 | 193 | 186 | 7 | 2 | 5 | 97% | 0 / 0% | 97% | MinGW/32/Qt from buildserver | |
2016-09-15 | 27 | 0/42 | 190 | 183 | 7 | 2 | 5 | 97% | 0 / 0% | 97% | Feature Complete | |
2016-09-08 | 28 | 0/31 | 196 | 176 | 20 | 3 | 17 | 92% | 5 / 2% | 91% | Sept 15 | Support eats all my time |
2016-09-01 | 28 | 0/30 | 194 | 173 | 21 | 3 | 18 | 91% | 6 / 3% | 90% | Sept 5 | ICC/JPEG fixed |
2016-08-25 | 28 | 0/22 | 196 | 167 | 29 | 4 | 25 | 89% | 7 / 3% | 87% | August 31 | Feature Creep |
2016-06-25 | 28 | 19 | 181 | 153 | 28 | 2 | 26 | 87% | 7 / 3% | 85% | June 30 | Almost there |
2016-06-13 | 28 | 0 | 182 | 145 | 37 | 2 | 35 | 81% | 15 / 8% | 81% | June 30 | Closing |
2016-05-30 | 35 | 0 | 182 | 139 | 43 | 3 | 40 | 77% | 15 / 8% | 78% | June 28 | Redmine consuming lots of time |
2016-05-14 | 35 | 0 | 182 | 139 | 43 | 3 | 40 | 76% | 15 / 8% | 78% | June 18 | |
2016-04-30 | 36 | 0 | 179 | 130 | 49 | 6 | 43 | 74% | 15 / 8% | 75% | June 7 | Working hard! |
2016-04-17 | 35 | 25 | 153 | 94 | 59 | 11 | 48 | 67% | 18 / 11% | 68% | June 4 | |
2016-04-02 | 33 | 25 | 153 | 93 | 60 | 9 | 51 | 66% | 18 / 11% | 66% | June 1 | |
2016-03-27 | 30 | 28 | 148 | 85 | 63 | 12 | 51 | 63% | 18 / 12% | 65% | June 4 | Break over |
2016-03-08 | 27 | 28 | 147 | 85 | 62 | 10 | 52 | 59% | 18 / 12% | 61% | June 29 | Having a break |
2016-02-15 | 27 | 28 | 139 | 84 | 55 | 6 | 49 | 57% | 18 / 12% | 64% | June 15 | Slipped! Having a break |
2016-02-01 | 27 | 28 | 138 | 82 | 56 | 6 | 50 | 57% | 18 / 13% | 64% | April 18 | Slipping. Must work harder! |
2016-01-16 | 27 | 28 | 133 | 73 | 60 | 10 | 50 | 56% | 18 / 13% | 63% | April 2 | Deferred #1138 |
2016-01-02 | 23 | 28 | 131 | 65 | 66 | 11 | 55 | 49% | 21 / 16% | 58% | April 4 | Added #1034 |
2015-12-19 | 22 | 28 | 124 | 56 | 68 | 13 | 55 | 48% | 21 / 17% | 56% | ||
2015-12-06 | 23 | 28 | 121 | 55 | 66 | 11 | 55 | 47% | 21 / 17% | 54% | Added #1109 | |
2015-11-23 | 23 | 28 | 121 | 45 | 76 | 21 | 55 | 44% | 21 / 17% | 54% | ||
2015-11-11 | 23 | 28 | 119 | 44 | 75 | 13 | 62 | 39% | 22 / 18% | 48% | ||
2015-10-29 | 23 | 28 | 117 | 36 | 81 | 21 | 60 | 38% | 23 / 20% | 49% | ||
2015-10-10 | 23 | 28 | 113 | 30 | 83 | 20 | 63 | 37% | 31 / 27% | 44% | ||
2015-09-27 | 20 | 32 | 107 | 29 | 79 | 11 | 68 | 35% | 31 / 29% | 36% | ||
2015-09-12 | 20 | 32 | 105 | 29 | 76 | 10 | 66 | 35% | 31 / 29% | 37% |
Progress = 1.0 - Remaining/Total
Issue | Done | Size | Left | Description |
Total | 0 | 0 weeks |
Engineer | Issues | Hours |
Andreas Huggel | 13 | 62 |
Alan Pater | 14 | 46 |
Ben Touchette | 5 | 104 |
Mahesh Hegde | 1 | 4 |
Niels Kristian Bech Jensen | 7 | 5 |
Robin Mills | 190 | 1641 |
Sridhar Boovaraghavan | 1 | 2 |
Thomas Beutlich | 4 | 16 |
Total | 235 | 1880 |
76% of issues reported in the last 90 days were closed within 30 days (90/118). We have totally clearly the backlog of "legacy" issues.
Days | Count | Total |
0 | 37 | 37 |
7 | 28 | 65 |
14 | 14 | 79 |
30 | 25 | 104 |
90 | 32 | 136 |
180 | 8 | 144 |
365 | 12 | 156 |
>365 | 79 | 235 |
The following development issues could not be undertaken for v0.26 due to insufficient engineers.
Priority | Scope | Issue |
1 | External Adobe XMPsdk | #941 |
2 | Video Code Umbrella | #1068 |
3 | Coverity Scan | #883 |
4 | Better raw file support and test | #992 |
5 | PDF Support in exiv2json | #1138 |
6 | Exiv2 man page structural enhancements | #1165 |
7 | Fails to build without XMP | #1130 |
8 | Visual Studio support for v0.27 | #1121 |
9 | Exiv2 manpage overhaul | #1061 |
10 | Tagging RAW images for Canon EOS-1Ds corrupts them | #977 |
At the end of May 2016, v0.26 had consumed about 1300 hours, of which about 1100 have been contributed by Robin Mills over 7 months (Sept 2015, Oct, Nov, Dec, Jan 2016, April, May). 157 hours/month. 36hrs/week. So, if your favourite request isn't in v0.26, please volunteer. Volunteers are always welcome.
I've written a script to read JSON from Redmine and generate the tables in this report. Checked into svn://dev.exiv2.org/svn/team/contrib/redmine
Also available in: Atom