Hi
My request
A info about the changes of a update
Regard
changelog on update page
Hi
My request
A info about the changes of a update
Regard
yes. would be nice…
+1
well, check my imho really nice workaround for at least the homeduino and pimatic update notification.
https://forum.pimatic.org/topic/1502/update-notification-and-changelog-for-pimatic-and-homeduino/
if you follow these steps accordingly you are having an update dashboard which will do what you asked for.
would be nice to have a plugin that collects all update information on the installed plugins and system core alltogether, but i guess it’s very complex and not easy to realise.
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebook
make it so !
+1 as it is very important to know what is going to change with an update on a “production” system.
Currently it really is like playing the lottery
I agree that the workaround referenced by @leader21 is indeed very nice but it is a pain to setup.
I also agree that creating a plugin which does what the “workaround” does is quite complex.
However I think we could for now maybe provide some “easy” plugin or even core supported version.
First idea which comes to my mind is to make it possible for plugin developers to provide a CHANGELOG.md file which could be used to get the information.
However I also just have seen this wile writing this post:
https://www.npmjs.com/package/changelog
Might not be to hard to build a plugin in the end…
@sweetpi
would be nice this changelogs would be on the update-page
pi@raspberrypi:~ $ changelog pimatic-hap
0.6.3 / 2016-04-18
* 0.6.3
pi@raspberrypi:~ $ changelog pimatic
0.9.8 / 2016-04-20
* Changelog not found.
pi@raspberrypi:~ $ changelog pimatic-ping
0.8.13 / 2016-04-15
* 0.8.13
pi@raspberrypi:~ $ changelog pimatic-cron
0.8.8 / 2016-03-25
* 0.8.8
* Merge pull request
Fixes for compatibility with pimatic 0.9
* Fixed compatibility issue with Coffeescript 1.9 as required for pimatic 0.9
* Updated peerDependencies property for compatibility with pimatic 0.9
pi@raspberrypi:~ $ changelog pimatic-ping
0.8.13 / 2016-04-15
* 0.8.13
but how to get every developer to write a changelog on update?
@xCite86 basically change log reads all commits from github between the releases. This way the change log gets automatically generated.
Just try
changelog pimatic-hap all
Developers just have to write some commit messages that make sense 😀.
pimatic-hap - pimatic HomeKit bridge
pimatic-echo - Amazon echo integration
pimatic-dash-button - Amazon dash button support
pimatic-alarm - pimatic alarm system
Like my work? Then consider a donation
Follow me: https://twitter.com/michaelkotten
ok, i think there is no chance that all developvers add a changelog
but, perhaps its possible, that i can choose which plugin i want update
and which not.
now, i can only update all new addons.
the above solution from @michbeck100 is a good one!
you need to install changelog if not yet done sudo npm install -g changelog
then use the command changelog pimatic-PLUGINNAME
you can redirect the output to a file and display it with the iframe device for example.
you can also use the variables input device to sgow different logfiles. you need to use some rules for that too. if i have some time i may present it later. guess it’s not that difficult.
but as you said, @noxx, the devs need o provide useful changelog information
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebook
make it so !
@leader21 said in changelog on update page:
the above solution from @michbeck100 is a good one!
I tend to disagree. Commit messages are only useful if developers follow some strict rules which allow for some kind of post-processing to create the change log. Realistically it is impossible to enforce that. Personally, I prefer a hand-made change log which I create as part of my projects - so I can decide what goes into the log and in which order items are listed. - Why not adding a meta-tag property to package.json which allow developers for linkage to their changelog? This way piamtic will be able to display change log data if the plugin developer maintains a change log. Another possibilty is to use Github release tags plus the related meta information. Using Github release tags has the advantage that the log can be accessed for each release individually. In this case it makes sense to let the version number in package.json match an assigned release tag. Assigning release tags is very easy with github.
See the the following examples for both approaches.
"It always takes longer than you expect, even when you take into account Hofstadter's Law.", Hofstadter's Law
well yes marcus, you are absolutely right! the hand made log is the best way for creating changelogs, as long as this is beeing maintained by the dev.
actually, most of the plugins do not posses a “real” changelog.
with the npm changelog you can quickly create an overview about the commits.
sure that’s no real changelog but it shows information on the version change (as far as it is assigned). better then nothing
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebook
make it so !
created a quick hack together.
what you need :
a variable called $plugin_changelog
a variablesinputdevice
an iframe device
a rule
it will look like that in the gui :
on the left is the variablesinputdevice, when you are entering the plugin name, the “changelog” will be created into a logfile that will be displayed with the iframe device.
first you need to sudo npm install -g changelog
that will install the npm changelog program, that we will call in the below rule for creating a changelog. the log will be created out of the inputted comments on commits.
here’s what you need :
{
"id": "plugin-changlog-input-device",
"name": "Pimatic Plugin Name for Changelog",
"class": "VariableInputDevice",
"variable": "plugin_changelog",
"type": "string"
},
attention!!
create the variable plugin_changelog at the variables menu!
"class": "iframeDevice",
"id": "plugin-changelog-display",
"name": "Plugin Changelog",
"url": "http://admin:password@192.168.178.20/files/home/pi/plugin_change.log",
"width": 600,
"height": 100,
"border": 0,
"scrolling": "yes",
"scale": 1,
"reload": 30
},
attention!!
you need the filebrowser plugin for my solution, so you can open files from allover the filesystem of your pi. change your credentials and ip adress accordingly!
alternatively you can create the logfile in the folder /home/pi/pimatic-app/node_modules/pimatic-mobile-frontend/public but then you need to change the path in the below rule too!
IF $plugin_changelog changes THEN execute "changelog $plugin_changelog all > /home/pi/plugin_change.log"
the rule will check, when you are entering a plugin name into the variablesinput device and will execute the changelog command to wrtite the output into the plugin_change.log file. as you see above in #2 the iframe reads this file every 30 seconds.
so when you are entering a plugin just have a little patience or change the update time of the iframe.
{
"plugin": "filebrowser",
"mappings": [
{
"path": "/files",
"directory": "/"
}
]
},
{
"plugin": "iframe"
},
{
"plugin": "shell-execute"
},
that’s a fine workaround and can be used for all plugins.
as @mwittig said, a handmade changelog is still the best, but as long as not every plugin delivers this information, this here is imho an acceptable solution.
so if you are using this, you can see the latest commits and decide wether to install a plugin or not. guess that’s what you wanted @noxx?
actually it’s not yet possible to select plugins for updating. either take all , leave it as it is or install manually on the bash then.
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebook
make it so !