Comments (9)
Hi, Thanks for your report. I'll look a little deeper perhaps next week... but caching results won't be so easy because of the templating nature of gitchangelog (well some solution could be investigated). I don't have so much time right now, but could you tell me if git log
command itself is as slow as gitchangelog
or if it is magnitude's quicker ? Is the time of the git log
command itself acceptable for you ?
Best answer would be to give me time of generation of gitchangelog (with time gitchangelog
) and time of and the number of commit you have in your history (both: git log --oneline | wc -l
and git rev-parse $(git log --format=%H | tail -n 1)..HEAD
)... timing these last two command would be helpfull too. Thanks again !
from gitchangelog.
I execute three commands:
1.
[dimti@arch-usb digitec]$ time gitchangelog > f
real 0m21.229s
user 0m11.027s
sys 0m4.177s
[dimti@arch-usb digitec]$ time git log --oneline | wc -l
1675
real 0m0.089s
user 0m0.040s
sys 0m0.063s
[dimti@arch-usb digitec]$ time git rev-parse $(git log --format=%H | tail -n 1)..HEAD
7484b0175dd2de292a07a828f64fd8ba4c387e63
^a62493ad0e4ffe549108228000a15903376929c0
real 0m0.053s
user 0m0.037s
sys 0m0.030s
I did correct?
from gitchangelog.
Perfect, thanks ! At first glance, there must be room for improvements ! Which templating system are you using ?
from gitchangelog.
In gitchangelog.rc
output_engine = rest_py
from gitchangelog.
Better late than never, I pushed a branch with numerous important changes. (python 3 compat, unittests, git config parsing refactor, git log refactor).
And sorry for spaming the line with commits, I had some issues with travis and like to make clean history.
Can you tell me if the performance is better on your side with this branch ? (notice it's on another remote)
https://github.com/vaab/gitchangelog/tree/issue_7
from gitchangelog.
Hi.
I`m got the error with gitchangelog on branch issue_7 (a60d77a)
$ time /opt/gitchangelog/gitchangelog.py > changelog
Traceback (most recent call last):
File "/opt/gitchangelog/gitchangelog.py", line 833, in
main()
File "/opt/gitchangelog/gitchangelog.py", line 820, in main
output_engine=config.get("output_engine", rest_py),
UnicodeEncodeError: 'ascii' codec can't encode characters in position 76-86: ord
inal not in range(128)
real 0m1.109s
user 0m0.304s
sys 0m0.248s
from gitchangelog.
Hum, this was pushed/closed automatically a little bit quickly. Can you check that the last version is correcting your speed issues ?
Thanks a lot for your last encoding issues, I introduced some more test around this. However, these issues are not always easy to circumvent. I would appreciate if you could confirm me that it works on your side.
from gitchangelog.
Hi.
It great
Testing
Old version:
[dimti@prototype digitec]$ time gitchangelog.py > CHANGELOG.md
real 0m26.633s
user 0m9.830s
sys 0m10.790s
New version:
[dimti@prototype digitec]$ time gitchangelog.py > CHANGELOG.md
real 0m1.806s
user 0m0.777s
sys 0m0.707s
Thanks!
from gitchangelog.
There's room for more improvements, and your suggestion to do incremental CHANGELOG was not forgotten. For now, I like the idea that CHANGELOG is not stored in git repository as it can be produced completely from tools such as gitchangelog
. But it's true that one could see such tools as a way to create a base version that they'll further edit, and in this case, storing the CHANGELOG in the git repository make sense, and thus, wanting to output only new part to the CHANGELOG would also make sense.
Also, for really large history, this would help (as you suggested) to reduce considerably the CHANGELOG generation time.
Anyway, thanks for your report !
from gitchangelog.
Related Issues (20)
- [WinError 2] The system cannot find the file specified HOT 3
- ignore_regexps doesnt match against whole message, only subject
- regexp filter skipping matches
- Added an AUR package.
- Update Readme to include basic full example. HOT 2
- Exception with FileInsertIntoFirstRegexMatch HOT 2
- pystache missing as dependency? HOT 2
- UnicodeEncodeError character maps to undefined HOT 7
- Support for pre-commit
- How to show changelog since certain commit? HOT 1
- Use branch name for section categorisation HOT 1
- test failures caused by 3.0.4 package missing test/__init__.py
- Is this project still maintained ? HOT 2
- Slow execution on big repositories under Cygwin HOT 8
- Enhancement Request: Multi-package repo support HOT 1
- Request: drop d2to1
- Offering to help with the project HOT 6
- Branch tags are erroneously included into change log
- Changelog usage?
- Incorrect gitchangelog format
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gitchangelog.