ponylang / changelog-tool Goto Github PK
View Code? Open in Web Editor NEW:horse: Tool for modifying the "standard pony" changelogs
Home Page: https://ponylang.io
License: BSD 2-Clause "Simplified" License
:horse: Tool for modifying the "standard pony" changelogs
Home Page: https://ponylang.io
License: BSD 2-Clause "Simplified" License
Hey, this seems like an awesome tool!
When I do changelogs I typically add in a link that is clickable so that I can see the diff in github, e.g. [0.1.0]: https://github.com/mec07/rununtil/compare/v0.0.1...v0.1.0
from https://github.com/mec07/rununtil/blob/master/CHANGELOG.md. In this example I've put the links right below each release as I maintain it manually, but a tool like this could just group all the links at the bottom.
Something like that would really help with updating and maintaining my changelogs :)
Let me know if you think it could be a helpful feature or not. I appreciate that you might not want to tie it with github...
The changelog-tool needs its own CHANGELOG!
Along with this, we should work with @jemc to get automatic changelog updates working on this repo including adding the appropriate labels.
CI for commits is currently run against master branch of ponyc because we have a change on changelog-tool master to address a breaking change on ponyc-master.
When 0.26.0 is released, we need to switch commit ci checks to be run against the ponyc-release image again.
Should be modeled after appdirs.
As part of automating the release process for Pony projects, it would be helpful it I could run a "print" or "extract" command that would print out the changelog entries for the given version.
So for ponyc:
changelog print 0.29.0
would result in
### Fixed
- Do not permit leading zeros in JSON numbers ([PR #3167](https://github.com/ponylang/ponyc/pull/3167))
- Make reading via TCPConnection re-entrant safe ([PR #3175](https://github.com/ponylang/ponyc/pull/3175))
- Cleanup TCPConnection GC-safety mechanism for writev buffers ([PR #3177](https://github.com/ponylang/ponyc/pull/3177))
- Add SSL tests and fix some SSL related bugs ([PR #3174](https://github.com/ponylang/ponyc/pull/3174))
- Fix lib/llvm to support MacOS ([PR #3181](https://github.com/ponylang/ponyc/pull/3181))
- Close Denial of Service issue with TCPConnection.expect ([PR #3197](https://github.com/ponylang/ponyc/pull/3197))
- Fix return type checking to allow aliasing for non-ephemeral return types. ([PR #3201](https://github.com/ponylang/ponyc/pull/3201))
### Added
- Allow use of OpenSSL 1.1.1 when building Pony ([PR #3156](https://github.com/ponylang/ponyc/pull/3156))
- Add `pointer.offset` to get arbitrary pointer tags via offset ([PR #3177](https://github.com/ponylang/ponyc/pull/3177))
- Add DTrace/SystemTap probes for muted & unmuted events ([PR #3196](https://github.com/ponylang/ponyc/pull/3196))
- Add method to AsioEvent to see if an event is a oneshot ([PR #3198](https://github.com/ponylang/ponyc/pull/3198))
### Changed
- Do not permit leading zeros in JSON numbers ([PR #3167](https://github.com/ponylang/ponyc/pull/3167))
- Make TCPConnection yield on writes to not hog cpu ([PR #3176](https://github.com/ponylang/ponyc/pull/3176))
- Change how TCP connection reads data to improve performance ([PR #3178](https://github.com/ponylang/ponyc/pull/3178))
- Allow use of runtime TCP connect without ASIO one shot ([PR #3171](https://github.com/ponylang/ponyc/pull/3171))
- Simplify buffering in TCPConnection ([PR #3185](https://github.com/ponylang/ponyc/pull/3185))
- Allow for fine-grained control of yielding CPU in TCPConnection ([PR #3197](https://github.com/ponylang/ponyc/pull/3187))
- Make TCPConnection.expect partial ([PR #3197](https://github.com/ponylang/ponyc/pull/3197))
We should make sure that it correctly builds on our target platforms (linux).
The workflow pr.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.
The workflow release.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.
The tool currently requires the following paragraph:
"All notable changes to the Pony compiler and standard library will be documented in this file. This project adheres to Semantic Versioning and Keep a CHANGELOG."
This is too specific if this tool is going to be used for other projects. The grammar should be modified so that any text is allowed after the # Change Log
heading and before the first release section.
The workflow nightlies.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.
There is currently no way to use the changelog-tool to add a new changelog entry.
The add command should take:
and then update the appropriate section by adding the new entry at the end of the section.
Should accept the
-f, --file=CHANGELOG.md Path of the changelog
-e, --edit=false Modify the changelog file
options that we use for other possible modifications command.
currently this doesn't parse but it gets verified. i suspect verified is currently not effective as you could create a non-parseable file that can pass verification.
here's an example:
# Change Log
All notable changes to the Pony compiler and standard library will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a CHANGELOG](http://keepachangelog.com/).
## [unreleased] - unreleased
### Fixed
- Fix invalid separator in PONYPATH for Windows. ([PR #32](https://github.com/ponylang/pony-stable/pull/32))
### Added
### Changed
## [0.1.0] - 2001-09-11
### Fixed
- Foo
The follow CHANGELOG file results in an error being thrown (not seen at the user level) and incorrect output.
# Change Log
All notable changes to the Pony compiler and standard library will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a CHANGELOG](http://keepachangelog.com/).
## [unreleased] - unreleased
### Fixed
- Fix invalid separator in PONYPATH for Windows. ([PR #32](https://github.com/ponylang/pony-stable/pull/32))
### Added
- Foo
### Changed
- Bar
When parsed, this encounters an error in Changelog.create
where children.next()? as AST
returns a non-AST node. The AST is...
(Release
( ## [unreleased] - unreleased)
(
(Fixed ### Fixed)
(Entries - Fix invalid separator in PONYPATH for Windows. ([PR #32](https://github.com/ponylang/pony-stable/pull/32)))
)
(
(Added ### Added)
()
)
(
(Changed ### Changed)
()
)
)
somehow, the top-level AST is lost so that children.next()?
is returning a TOKEN.
The end result is that else
block is executed in ChangeLog.create_release
resulting in:
# Change Log
All notable changes to the Pony compiler and standard library will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a CHANGELOG](http://keepachangelog.com/).
### Fixed
### Added
### Changed
as the final output.
Keep existing instructions as secondary "from source".
Point people to using ponyup
as the primary installation means. Note that it is only for Linux. Should include a link to installation instructions for ponyup
in its repo.
Take from ponyup.
Dockerfile is currently built using ponyc:master. Once we can again build against release (when 0.26.0 comes out), we need to switch back to using ponyc:release in the dockerfile.
Once #37 is merged, it should be a simple matter to add uploading nightlies to Cloudsmith,
Let's be consistent across projects and try to always do the same way.
It can all be supported there and we are moving away from CircleCI
I'm fixing bugs in the changelog-tool
Once complete, we want to release a 0.2.0 version
The current install instructions assume that the user already has pony-stable
installed.
This should be listed as an explicit dependency.
The workflow release.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.
The test scripts build their own changelog tool rather than depending on one being built with full options. This is very brittle and needs to be brought in line with the rest of the Makefile.
To make using the CHANGELOG tool easier. It would be good if there was a "new" command that would create an initial, empty, valid, changelog.
For the Dockerfile, we want a multistage build that uses the musl version of ponyc to build the changelog-tool and then we can copy over that build artifact into a new alpine based image.
It will end up being smaller than the current image.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.