From 341995807ead0e96e8d79afdefcf9729f8b7d1ba Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Mon, 26 Jan 2015 16:32:34 +0100 Subject: [PATCH 1/5] refactor: add bundler support and address warnings --- Gemfile | 2 + Gemfile.lock | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++ _config.yml | 3 +- atom.xml | 1 - rss.xml | 1 - 5 files changed, 129 insertions(+), 4 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..618d898 --- /dev/null +++ b/Gemfile @@ -0,0 +1,2 @@ +source 'https://rubygems.org' +gem 'github-pages' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..dd2ea70 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,126 @@ +GEM + remote: https://rubygems.org/ + specs: + RedCloth (4.2.9) + activesupport (4.2.0) + i18n (~> 0.7) + json (~> 1.7, >= 1.7.7) + minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) + tzinfo (~> 1.1) + blankslate (2.1.2.4) + celluloid (0.16.0) + timers (~> 4.0.0) + classifier-reborn (2.0.3) + fast-stemmer (~> 1.0) + coffee-script (2.3.0) + coffee-script-source + execjs + coffee-script-source (1.8.0) + colorator (0.1) + execjs (2.2.2) + fast-stemmer (1.0.2) + ffi (1.9.6-x64-mingw32) + gemoji (2.1.0) + github-pages (32) + RedCloth (= 4.2.9) + github-pages-health-check (~> 0.2) + jekyll (= 2.4.0) + jekyll-coffeescript (= 1.0.1) + jekyll-mentions (= 0.2.1) + jekyll-redirect-from (= 0.6.2) + jekyll-sass-converter (= 1.2.0) + jekyll-sitemap (= 0.6.3) + jemoji (= 0.4.0) + kramdown (= 1.5.0) + liquid (= 2.6.1) + maruku (= 0.7.0) + mercenary (~> 0.3) + pygments.rb (= 0.6.0) + rdiscount (= 2.1.7) + redcarpet (= 3.1.2) + terminal-table (~> 1.4) + github-pages-health-check (0.2.1) + net-dns (~> 0.6) + public_suffix (~> 1.4) + hitimes (1.2.2) + html-pipeline (1.9.0) + activesupport (>= 2) + nokogiri (~> 1.4) + i18n (0.7.0) + jekyll (2.4.0) + classifier-reborn (~> 2.0) + colorator (~> 0.1) + jekyll-coffeescript (~> 1.0) + jekyll-gist (~> 1.0) + jekyll-paginate (~> 1.0) + jekyll-sass-converter (~> 1.0) + jekyll-watch (~> 1.1) + kramdown (~> 1.3) + liquid (~> 2.6.1) + mercenary (~> 0.3.3) + pygments.rb (~> 0.6.0) + redcarpet (~> 3.1) + safe_yaml (~> 1.0) + toml (~> 0.1.0) + jekyll-coffeescript (1.0.1) + coffee-script (~> 2.2) + jekyll-gist (1.1.0) + jekyll-mentions (0.2.1) + html-pipeline (~> 1.9.0) + jekyll (~> 2.0) + jekyll-paginate (1.1.0) + jekyll-redirect-from (0.6.2) + jekyll (~> 2.0) + jekyll-sass-converter (1.2.0) + sass (~> 3.2) + jekyll-sitemap (0.6.3) + jekyll-watch (1.2.1) + listen (~> 2.7) + jemoji (0.4.0) + gemoji (~> 2.0) + html-pipeline (~> 1.9) + jekyll (~> 2.0) + json (1.8.2) + kramdown (1.5.0) + liquid (2.6.1) + listen (2.8.5) + celluloid (>= 0.15.2) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + maruku (0.7.0) + mercenary (0.3.5) + mini_portile (0.6.2) + minitest (5.5.1) + net-dns (0.8.0) + nokogiri (1.6.6.2-x64-mingw32) + mini_portile (~> 0.6.0) + parslet (1.5.0) + blankslate (~> 2.0) + posix-spawn (0.3.9) + public_suffix (1.4.6) + pygments.rb (0.6.0) + posix-spawn (~> 0.3.6) + yajl-ruby (~> 1.1.0) + rb-fsevent (0.9.4) + rb-inotify (0.9.5) + ffi (>= 0.5.0) + rdiscount (2.1.7) + redcarpet (3.1.2) + safe_yaml (1.0.4) + sass (3.4.10) + terminal-table (1.4.5) + thread_safe (0.3.4) + timers (4.0.1) + hitimes + toml (0.1.2) + parslet (~> 1.5.0) + tzinfo (1.2.2) + thread_safe (~> 0.1) + yajl-ruby (1.1.0) + +PLATFORMS + x64-mingw32 + +DEPENDENCIES + github-pages diff --git a/_config.yml b/_config.yml index 23ba5bc..6c1df6f 100644 --- a/_config.yml +++ b/_config.yml @@ -3,8 +3,7 @@ permalink: /:year/:month/:day/:title exclude: [".rvmrc", ".rbenv-version", "README.md", "Rakefile", "changelog.md"] -auto: true -pygments: true +highlighter: pygments # Themes are encouraged to use these universal variables # so be sure to set them if your theme uses them. diff --git a/atom.xml b/atom.xml index 97f6d6b..8f5bf9d 100644 --- a/atom.xml +++ b/atom.xml @@ -1,5 +1,4 @@ --- -layout: nil title : Atom Feed --- diff --git a/rss.xml b/rss.xml index 106b649..3368b49 100644 --- a/rss.xml +++ b/rss.xml @@ -1,5 +1,4 @@ --- -layout: nil title : RSS Feed --- From 3899eae61ce87ce445f082601d916c5077dd3525 Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Mon, 26 Jan 2015 16:39:35 +0100 Subject: [PATCH 2/5] add divider between posts on home page --- index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/index.md b/index.md index 752371f..34f630e 100644 --- a/index.md +++ b/index.md @@ -9,4 +9,6 @@ tagline: Official team blog
{{ post.date | date_to_string }}

{{ post.title }} - {{ post.tagline }}

{{ post.content }} +
{% endfor %} +More posts... From a2220d42aa812fa7b2f7c7c3231a1932b97f1e42 Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Mon, 26 Jan 2015 23:33:11 +0100 Subject: [PATCH 3/5] add logo to home page --- _includes/themes/twitter/page.html | 2 +- images/logo_230.png | Bin 0 -> 6016 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 images/logo_230.png diff --git a/_includes/themes/twitter/page.html b/_includes/themes/twitter/page.html index ff105c1..c3836ec 100644 --- a/_includes/themes/twitter/page.html +++ b/_includes/themes/twitter/page.html @@ -1,5 +1,5 @@
diff --git a/images/logo_230.png b/images/logo_230.png new file mode 100644 index 0000000000000000000000000000000000000000..9c94b8163e1139ef1e8bcb930e121d18f40d4df5 GIT binary patch literal 6016 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 b%_F_ngEm*PDAp6emZN|bH597k%)|Z%A3mei literal 0 HcmV?d00001 From 4bc9a089dde270f11db4eaed213f00076e89104a Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Mon, 26 Jan 2015 23:59:32 +0100 Subject: [PATCH 4/5] added 2015-02-02-version-0.13.md --- _posts/2015-02-02-version-0.13.md | 48 ++++++++++++++++++++++++++++++ images/2015-02-02-after.png | Bin 0 -> 18564 bytes images/2015-02-02-before.png | Bin 0 -> 3944 bytes images/2015-02-02-during.png | Bin 0 -> 31688 bytes 4 files changed, 48 insertions(+) create mode 100644 _posts/2015-02-02-version-0.13.md create mode 100644 images/2015-02-02-after.png create mode 100644 images/2015-02-02-before.png create mode 100644 images/2015-02-02-during.png diff --git a/_posts/2015-02-02-version-0.13.md b/_posts/2015-02-02-version-0.13.md new file mode 100644 index 0000000..52ee424 --- /dev/null +++ b/_posts/2015-02-02-version-0.13.md @@ -0,0 +1,48 @@ +--- +layout: post +title: "A new filesystem" +tagline: "Playing better with .NET solutions." +category: Releases +tags: [changes] +--- +{% include JB/setup %} + +With script version 0.13 we decided to make some changes to help scriptcs run more smoothly together with existing .NET solutions. A problem which existed until now was the occasional inability to run scriptcs from within the folder of a regular .NET solution due to problematic assemblies in `packages` or `bin` folders. These would be assemblies which were not installed in order to be used from scriptcs, but rather from the .NET solution, and cause errors or warnings when running scriptcs. In particular, developers and users of build systems based on scriptcs, e.g. [PVC](http://pvcbuild.com/) and [Bau](https://github.com/bau-build/bau), were often tripped up by this. + +The problem occured because, until now, the file system conventions used by regular .NET and scriptcs overlapped. They both used `packages.config`, `packages/` and `nuget.config` for NuGet package management and scriptcs searched `bin/` for binaries, a folder often used for other purposes in a .NET solution. + +Starting with version 0.13, we've changed our conventions to isolate our file system artifacts from interference with a regular .NET solution. + +
+.cache            ->   .scriptcs_cache
+bin/              ->   scriptcs_bin/
+packages/         ->   scriptcs_packages/
+nuget.config      ->   scriptcs_nuget.config
+packages.config   ->   scriptcs_packages.config
+
+ +### Automatic migration + +When you run scriptcs 0.13, it will detect 'legacy' file system artifacts (those shared with regular .NET) and automatically migrate them. To ensure anything outside scriptcs keeps functioning (e.g. an existing .NET solution), the existing artifacts are left in place, and copies are made instead. The only artifact which is renamed is `.cache` (to `.scriptcs_cache`) since this was never shared with regular .NET, but has still had it's named change for consistency. + +E.g. if your folder looked like this *before* running scriptcs 0.13 (you may not have all of these artifacts): + + + +you will see this output when running scriptcs 0.13: + + + +and you your folder will end up looking like this: + + + +If you don't need the original artifacts, feel free to delete them. It would be very difficult to automatically detect, with certainty, whether or not they're required so we thought we'd leave it to you to decide. + +### Performance + +Another nice effect of this changed is a potential increase in performance. When scriptcs starts up, it scans `bin/` and `packages/` for modules and script packs. Previously, a large .NET solution may have many assemblies in these folders, not required for script execution, and this would result in a performance hit. With the new file system conventions, only those assemblies needed for script execution are scanned and that should speed things up in many cases. + +### Hosting + +If you are hosting scriptcs in your own application and you want to perform automatic migration, you will need to call `scriptServices.FileSystemMigrator.Migrate()` at an appropriate place in your application. \ No newline at end of file diff --git a/images/2015-02-02-after.png b/images/2015-02-02-after.png new file mode 100644 index 0000000000000000000000000000000000000000..b41a89239e5d879615e3c57bbc13a5b691a526a9 GIT binary patch literal 18564 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 literal 0 HcmV?d00001 diff --git a/images/2015-02-02-before.png b/images/2015-02-02-before.png new file mode 100644 index 0000000000000000000000000000000000000000..82b7ed1250c42079e04bdd1ef694f2caa8f85d06 GIT binary patch literal 3944 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 literal 0 HcmV?d00001 diff --git a/images/2015-02-02-during.png b/images/2015-02-02-during.png new file mode 100644 index 0000000000000000000000000000000000000000..cc239bfdae92aa7a254a1598b63ab43edfcacb68 GIT binary patch literal 31688 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 literal 0 HcmV?d00001 From 92485ef7ff9acad05ae3d37778c08e596250c8a3 Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Tue, 27 Jan 2015 21:22:44 +0100 Subject: [PATCH 5/5] 2015-02-02-version-0.13.md fix typos and add summary --- _posts/2015-02-02-version-0.13.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/_posts/2015-02-02-version-0.13.md b/_posts/2015-02-02-version-0.13.md index 52ee424..cfe76df 100644 --- a/_posts/2015-02-02-version-0.13.md +++ b/_posts/2015-02-02-version-0.13.md @@ -1,13 +1,13 @@ --- layout: post -title: "A new filesystem" +title: "A new file system" tagline: "Playing better with .NET solutions." category: Releases tags: [changes] --- {% include JB/setup %} -With script version 0.13 we decided to make some changes to help scriptcs run more smoothly together with existing .NET solutions. A problem which existed until now was the occasional inability to run scriptcs from within the folder of a regular .NET solution due to problematic assemblies in `packages` or `bin` folders. These would be assemblies which were not installed in order to be used from scriptcs, but rather from the .NET solution, and cause errors or warnings when running scriptcs. In particular, developers and users of build systems based on scriptcs, e.g. [PVC](http://pvcbuild.com/) and [Bau](https://github.com/bau-build/bau), were often tripped up by this. +With scriptcs version 0.13 we decided to make some changes to help scriptcs run more smoothly together with existing .NET solutions. A problem which existed until now was the occasional inability to run scriptcs from within the folder of a regular .NET solution due to problematic assemblies in `packages` or `bin` folders. These would be assemblies which were not installed in order to be used from scriptcs, but rather from the .NET solution, and cause errors or warnings when running scriptcs. In particular, developers and users of build systems based on scriptcs, e.g. [PVC](http://pvcbuild.com/) and [Bau](https://github.com/bau-build/bau), were often tripped up by this. The problem occured because, until now, the file system conventions used by regular .NET and scriptcs overlapped. They both used `packages.config`, `packages/` and `nuget.config` for NuGet package management and scriptcs searched `bin/` for binaries, a folder often used for other purposes in a .NET solution. @@ -45,4 +45,10 @@ Another nice effect of this changed is a potential increase in performance. When ### Hosting -If you are hosting scriptcs in your own application and you want to perform automatic migration, you will need to call `scriptServices.FileSystemMigrator.Migrate()` at an appropriate place in your application. \ No newline at end of file +If you are hosting scriptcs in your own application and you want to perform automatic migration, you will need to call `scriptServices.FileSystemMigrator.Migrate()` at an appropriate place in your application. + +### Summary + +Our hope is that these changes will smooth out any friction you may have running scriptcs in environments shared with regular .NET solutions and projects. In the majority of cases, the upgrade to scriptcs 0.13 should be seamless. Migration to the new conventions is automatic and the only burden left on you is to remove any unwanted 'legacy' artifacts. If you do have any problems, please don't hesitate to let us know by [raising an issue](https://github.com/scriptcs/scriptcs/issues). + +By the way, the file system changes are not the only changes in scriptcs version 0.13. For full details of what is contained in this release, please see the [release notes](https://github.com/scriptcs/scriptcs/releases/tag/v0.13). \ No newline at end of file