PureBasic Demo and Travis CI
Posted: Sat Jul 13, 2019 7:29 am
** EDIT (2019/12/07) ** This discussion has now moved to GitHub
Hi @Fred,
I need to ask you a few questions of legal technical nature about the free demo version of PureBasic.
I have a few PB projects up and running on GitHub and I'd like to take advantage of Travis Continuous Integration service to build and validate all commits and pull requests.
This would also add the benefit of allowing to test that the code builds on all three major OSs — Win, Ubuntu and macOS (one could also add testing it against SpiderBasic, if needed).
The first obvious question (legal) is whether it's permissible to use the free demo this way.
The second question (technical) is whether the max 800 lines of code limitation also applies to the --check compiler option. Does it? I.e. can the demo validate any length of code or is it subject to the same 800 lines restriction of the compiler?
Could you also clarify how the --check option works in terms of cross platformness? If I use this option under Windows for a cross-platform project (where compiler directives provide platform specific code at compilation time), will the compiler be able to fully test the application correctness for all platforms or just tell me if it works fine on Windows? And, can this option be used to test a Linux-only project using the Windows compiler?
Back to Travis CI ... it would be really great if there was a way to validate PureBasic builds on GitHub via Travis. But for this to be possible we'd need either the demo version to support checking code integrity without limits, or else find a way to actually compile PB code without violating its license terms (even using private repositories, I guess that uploading a full copy of the compiler is a breach of its license).
Another issue would be that the download area only offers the latest PB version of the free demo, whereas on a Git project one would need to be able to access specific versions. This could be solved if the PB website were to offer links to demo versions of all PB releases, so Travis could be set to download a specific version at build time (and no copies would stored in the actual repositories, but only used for the build test).
I understand that investing energy on this might not be a priority for PB right now, but I hope that this post will at least raise awareness about potential uses and needs for collaborative PB projects. If you can find of a solution to the above problems it would be a great enhancement for those working on PB projects on GitHub, GitLab, Bitbucket, etc. (but also for companies which use PureBasic and version control in their workflow, though private servers).
Thanks
Hi @Fred,
I need to ask you a few questions of legal technical nature about the free demo version of PureBasic.
I have a few PB projects up and running on GitHub and I'd like to take advantage of Travis Continuous Integration service to build and validate all commits and pull requests.
This would also add the benefit of allowing to test that the code builds on all three major OSs — Win, Ubuntu and macOS (one could also add testing it against SpiderBasic, if needed).
The first obvious question (legal) is whether it's permissible to use the free demo this way.
The second question (technical) is whether the max 800 lines of code limitation also applies to the --check compiler option. Does it? I.e. can the demo validate any length of code or is it subject to the same 800 lines restriction of the compiler?
Could you also clarify how the --check option works in terms of cross platformness? If I use this option under Windows for a cross-platform project (where compiler directives provide platform specific code at compilation time), will the compiler be able to fully test the application correctness for all platforms or just tell me if it works fine on Windows? And, can this option be used to test a Linux-only project using the Windows compiler?
Back to Travis CI ... it would be really great if there was a way to validate PureBasic builds on GitHub via Travis. But for this to be possible we'd need either the demo version to support checking code integrity without limits, or else find a way to actually compile PB code without violating its license terms (even using private repositories, I guess that uploading a full copy of the compiler is a breach of its license).
Another issue would be that the download area only offers the latest PB version of the free demo, whereas on a Git project one would need to be able to access specific versions. This could be solved if the PB website were to offer links to demo versions of all PB releases, so Travis could be set to download a specific version at build time (and no copies would stored in the actual repositories, but only used for the build test).
I understand that investing energy on this might not be a priority for PB right now, but I hope that this post will at least raise awareness about potential uses and needs for collaborative PB projects. If you can find of a solution to the above problems it would be a great enhancement for those working on PB projects on GitHub, GitLab, Bitbucket, etc. (but also for companies which use PureBasic and version control in their workflow, though private servers).
Thanks