-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Remove IDE code from the repository #904
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I think
so we not loose any information's in best case we can setup the gits in a way that we can check them out in to the Arduino installation or user directory for easy testing and development, without the need for triggering the build process or creating many symlinks. may creating an new "https://github.com/esp8266/Arduino" where we add all components as sub modules as global versions history and matching, with Tags for each release and branches for stable, staging and master for development. for more info of git subtree see: |
@igrr option 2 works for me; source for the Arduino IDE and the ESP8266 board package should IMHO be separated as suggested. The board package should have tools and core library only; also we should consider libraries that build on top of core having a separate package and downloadable via Arduino IDE menu -> Sketch -> Include Library -> Manage Libraries ... like to board is downloadable via Tools -> Board -> Boards Manager ... This would mean as the board package and core libraries become stable; the cadence will be reduced until additional core ESP8266 SDK feature become available; and this would not impact on any cadence of the libraries that may/or may not be as robust as the core or require change to accommodate feature enhancements. |
Another comment regarding option 2 proposed in my first message. Since history will be rewritten using git filter-branch, things as simple as Edit: basically, most people who use git but do not contribute code to this project will have to do |
First draft is here: https://github.com/igrr/esp8266-arduino-core
(Edited according to the comments below) |
@igrr good work, took less than 30seconds to clone the repo :D 💃 👍 |
@igrr maybe this https://github.com/pgollor/esp8266-arduino-autobuilder could help for the new travis CI script??? |
@igrr looks good
what is you proposal regarding external libraries? |
@pgollor Thanks for the link, will consider using arduino-builder for CI. The reason I wanted to use Arduino app itself was that we can also test downloading and installation of boards manager package this way. Or perhaps we can do both? Will think about this. @Links2004 thanks for noting docs and OneWire! Will move those as well. Regarding Adafruit_ILI9341, i think it would be better off maintained in your repository. |
I've written a script to do all the changes on Friday without a lot of manual steps: |
@igrr You are right. It is better to use the Arduino App instead of the arduino-builder. |
Updated https://github.com/igrr/esp8266-arduino-core to include missing libraries, docs, and readme. Readme needs links to be fixed, but that may be done afterwards. |
Mostly done, just need to add scripts to generate boards manager package. |
Json board manager method is the best at my opinion . Good work Sent from my iPhone
|
@igrr At first: Great work :-). What we are need?
If we have fully automatic scripts we can use a CI system to generate a nightly build board manager package or so :) I hope you are understanding my thoughts. ;-) |
Building a board manager package release used to mean the following:
Steps 1—3 were handled by Regarding nightly builds, this should be supported by Arduino IDE starting with 1.6.6: |
Thanks for your summary. At which point can I help? I think it is better to use github releases instead of uploading it to arduino.esp8266.com because it is easier to get older releases and seeing the outline from all releases. |
For the documentation we can use GitHub Pages? GitHub Pages supports jekyll too. |
The trick is that we need to maintain multiple copies of documentation, one for every version. |
GitHub Pages are basically a branch inside the git. example: |
I will wait for your jekyll templates and after that i will do some tests with automatically creating the documentation and adding to github pages. |
Github pages isn't useful to host different documentation versions. We could use gh-pages to publish the latest version. Solutions for older releases:
Do you have better ideas? What do you think about stable and staging git tags for better versioning? |
I think gh-pages may work perfectly fine for us. Each time we do a release, we use jekyll to build html docs and add these docs to gh-pages. Each version goes into a separate directory. On gh-pages we can maintain a menu with a list of versions pointing to these directories. Regarding stable/staging versions, my idea is to adopt the following scheme.
This way we maintain a single branch, and mark releases as intermediate ('staging') or final ('stable') depending on where in development cycle we find ourselves. @pgollor I've pushed my jekyll template to https://github.com/igrr/esp8266-arduino-docs. |
My thought was, that gh-pages will increase with every new version and thereby the hole repository will increase with redundant data. But I think that is the easiest way. :-) @igrr Thanks for it. I will do some test with your scripts. I have some more questions:
|
for the local development you not need to fetch the gh-pages branch. so the size will be not a problem. |
I configured doxygen to generate a class and function overview, may its interesting to integrate this in the release management. |
I did some tests with gh-pages and here are the results:
TODO:
|
Awsome! Looks good to me. |
That was my fault. I wrote it not correctly, but i mean the same as you. :) The package file should be distributed via github releases. ;) Okay, my time is very limited at this week. So should I do the last steps at the end of this week, or could you do the final steps? |
If you can do the pull request both for shell scripts and Jekyll templates, On Mon, Nov 2, 2015, 12:00 pgollor [email protected] wrote:
|
Pullrequests: done I think there is a way to link some files from the master branch in the gh-pages branch, but i can't remember. Attention: @igrr By the way: Thanks four your trust to adding me as calloborator to Arduino. |
This ticket should track long due repository overhaul. Since the Boards manager was introduced, it doesn't make sense to maintain the whole IDE fork in this repository. We only need the files under hardware/esp8266com/esp8266, plus some scripts to build/bundle/upload boards manager package.
ESP8266FS tool should go into a separate repository.
This cleanup will allow us to remove tags inherited from the IDE (e.g. 1.6.5) and start maintaining a sane version numbering scheme for the core alone (currently versions look like
1.6.5-1160-gef26c5f
which is a shame).There are three ways to do the cleanup.
git log --follow
), rebasing of pending pull requests is straightforward. Cons: this will generate a huge diff, and repository download will get much larger.Personally I'm inclined to go with option 2. However this may upset people who are currently working on some pieces of code. So I'm leaving this ticket open until next week to gather comments, perhaps there is another better option which I'm missing here.
The text was updated successfully, but these errors were encountered: