Skip to content
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

for local use, recommend Bundler and provide config #361

Closed
wants to merge 1 commit into from

Conversation

SethTisue
Copy link
Member

so that people can test the site locally without having to
install stuff systemwide on their local machines

originally contributed by @soc as part of a larger PR (#359), so I've
retained him as author on the commit. the only significant thing I
(@SethTisue) did differently was specify Jekyll 2, not 3, in
Gemfile.lock, since Jekyll 2 is what we're using in production

@SethTisue
Copy link
Member Author

review by @heathermiller and @fsalvi

note that I have no idea how closely the components and versions in the Gemfile.lock match what is actually used in production.

however, I don't think that actually matters as far as merging this, because:

  • unless I have failed to understand something, the changes here will not affect the production site, only contributors trying to test locally
  • the old instructions in the README gave no guidance about versions whatsoever, so it was a crapshoot and you were overwhelmingly likely to end up with something that didn't resemble the production setup at all, so although this PR may not make things perfect, I think it makes them a good deal better and does not make them worse

so that people can test the site locally without having to
install stuff systemwide on their local machines

originally contributed by Simon as part of a larger PR, so I've
retained him as author on the commit.  the only significant thing I
(Seth) did differently was specify Jekyll 2, not 3, in Gemfile.lock,
since Jekyll 2 is what we're using in production
@SethTisue
Copy link
Member Author

@heathermiller is this OK to merge...?

@fsalvi
Copy link
Contributor

fsalvi commented Dec 7, 2015

Well, I just tried it using the production server configuration, and it's not ok: /resources/js/vendor is missing because of the exclude line in _config.yml
I tried to remove this exclude line and it looks fine for the other modifications.

@SethTisue
Copy link
Member Author

@fsalvi thanks for taking the time to test this. what version of Jekyll are we running in production?

it looks to me from jekyll/jekyll#1915 that it should work in current Jekyll to use an initial slash to anchor the excluded path to the root. but to be sure this will work, I need to know what version of Jekyll is expected.

@heathermiller
Copy link
Member

Not sure if this is running on chara, but:

hmiller@chara:~$ jekyll --version
/home/hmiller/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.
Jekyll 0.11.2

So, it's old.

I've been told that Fabien plans on updating Ruby etc on that machine in the coming months, which should eventually enable us to upgrade to Jekyll 3.

@SethTisue
Copy link
Member Author

wow, that is old!

OK, I'm going to close this for now while I think about whether to put together a Gemfile.lock with that version, or just wait for the upgrade, or what.

I would be eager to help with the upgrade (within the limits of my not very extensive experience with this stuff).

@fsalvi
Copy link
Contributor

fsalvi commented Dec 10, 2015

Well, before reinstalling the server (which I plan to do in April), we could upgrade to jekyll 1.5.1 if this is useful...

@heathermiller
Copy link
Member

It probably is useful!

@SethTisue
Copy link
Member Author

yes, moving to 1.5.1 would be a huge improvement

@SethTisue
Copy link
Member Author

to respond to Heather's questions on Gitter:

why can't you preview locally?
Is it really such a big deal to install Jekyll?

yes, this is a blocker for me. @soc obviously considers it important as well.

scala-lang isn't the only Ruby app on my machine, and I'm not willing to make global visible changes to my Ruby setup in order to preview changes to one website. partly because I consider it undesirable; partly because I lack the knowledge and competence to troubleshoot any resulting conflicts; and partly because I think it's undesirable to impose this requirement on other contributors as well.

that's why I consider it essential for us to provide a proper Gemfile and Gemfile.lock. we already do this right over in the docs.scala-lang repo; we ought to do it right in this repo, too.

I'm not just griping — I want to fix it myself. I've been just moving slowly on it.

@fsalvi can you tell me exactly what version of Jekyll chara is running? is it 0.11.2? so far I only know what version Heather has installed on her local machine. if I'm going to go through the process of producing a Gemfile/Gemfile.lock combo for an old version of Jekyll (perhaps this will actually be quite easy? I don't know yet, I'm learning this stuff as I go), I would prefer to know beforehand exactly what Jekyll version I'm targeting.

@SethTisue
Copy link
Member Author

P.S. perhaps this is all based on some misconception of mine. it's hard for me to be sure since I'm not expert on this stuff. over at #197, you said "I use Jekyll versions 1-3 across computers to build locally without issue". as far as I know, the only way that's possible is using Gemfile/Gemfile.lock, which we don't yet have in this repo? if there is some other method by which multiple Jekyll versions can coexist, I don't know what it is.

@fsalvi
Copy link
Contributor

fsalvi commented Dec 10, 2015

Yes, it is: jekyll -v
Jekyll 0.11.2

It has remained the same version since the development of the web site in July 2013.
But, I guess I could easily upgrade it to 1.5.1 as I did it for another website recently. I will do some tests to ensure this doesn't break anything and will upgrade it if it's ok soon (beginning of next week I guess).

@SethTisue
Copy link
Member Author

awesome! I'm perfectly happy to postpone the Gemfile stuff a little while and wait for that upgrade.

@adriaanm
Copy link
Contributor

The main reason I'd like to upgrade is that the current markdown parser is very broken. I've spent hours already trying to make stuff parse that previews just fine locally and on github. Almost 20% of my commits in this repo are to fix maruku issues:

57112df (HEAD -> 2016-update) last formatting tweak
d86a1c0 ok, how about a table then?
3ec0be5 ffs maruku, just render the bullets already
cad933a fix formatting error, slight reword
6566cf9 Add break to 2.10.6 announcement
1d31e06 (adriaanm/master) Remove comment to unbreak homepage?
46fd13e Unbreak front page by limiting blurb?
d815823 (adriaanm/2.11.5, 2.11.5) Appease maruku 0.6.1: no leading @s
3e855d1 Remove trailing comma, appease Maruku?
f1eacc5 fix formatting in 2.12 roadmap
c24bf7b please, maruku, tell me this works
fab57d0 fix markdown formatting, tweak eclipse bit

@soc
Copy link
Contributor

soc commented Dec 11, 2015

I switched to redcarpet recently, because that's the one used ("required") by the Scala spec, and have been pretty happy so far. As far as I know, maruku is considered to be obsolete by its authors, and Jekyll switched to another parser in 2.0 ... (kramdown?).

Kramdown should work fine, too, I just picked redcarpet because of all the special options being used for the spec, and it working fine with content from both scala-lang, docs.scala-lang and the spec.

@heathermiller
Copy link
Member

@fsalvi the ball is your court. Redcarpet or kramdown or whatever one elects to use is another dependency that must be added to the build machine.

@fsalvi
Copy link
Contributor

fsalvi commented Dec 11, 2015

Well, I just did a test using kramdown to build the website and it looks ok. It's even much fast, 10s for kramdown instead of 59s for maruku ! I will switch to it next week on the production server in the same time I upgrade jekyll.

@heathermiller
Copy link
Member

Awesome, thanks Fabien :)

@adriaanm
Copy link
Contributor

Thanks, @fsalvi!

@fsalvi
Copy link
Contributor

fsalvi commented Dec 14, 2015

Ok, I just did the modifcations and built the website. It looks good, but let me know if you see anything wrong. Thanks.

@SethTisue
Copy link
Member Author

thanks so much @fsalvi. I haven't noticed any problems on the site in the last few days.

SethTisue added a commit to SethTisue/scala-lang that referenced this pull request Dec 16, 2015
so that people can test the site locally without having to
install stuff systemwide on their local machines

based on an earlier version originally contributed by Simon Ochsenreither
as part of a larger PR

the choice of Jekyll 1.5.1, for now, is based on Fabien's comments at
scala#361
@SethTisue
Copy link
Member Author

successor PR at #373

SethTisue added a commit to SethTisue/scala-lang that referenced this pull request Dec 17, 2015
so that people can test the site locally without having to
install stuff systemwide on their local machines

based on an earlier version originally contributed by Simon Ochsenreither
as part of a larger PR

the choice of Jekyll 1.5.1, for now, is based on Fabien's comments at
scala#361

particular version numbers for other gems are from Fabien's comment
at scala#373 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants