Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Dec 06 10:34
    vedranvinko starred sparklemotion/nokogiri
  • Dec 05 15:31
    flavorjones commented #1582
  • Dec 04 22:49
    flavorjones milestoned #1894
  • Dec 04 22:48
    flavorjones commented #1894
  • Dec 04 22:48
    flavorjones assigned #1894
  • Dec 04 22:48
    flavorjones review_requested #1894
  • Dec 04 22:47
    flavorjones commented #1729
  • Dec 04 22:45
    flavorjones assigned #1910
  • Dec 04 22:44
    flavorjones assigned #1912
  • Dec 04 22:43
    flavorjones assigned #1952
  • Dec 04 17:02
    flavorjones commented #1953
  • Dec 04 15:28

    flavorjones on v1.10.7

    (compare)

  • Dec 04 15:28

    flavorjones on v1.10.x

    version bump to v1.10.7 (compare)

  • Dec 04 15:10
    franzliedke commented #1953
  • Dec 04 15:09
    franzliedke commented #1953
  • Dec 04 14:11
    flavorjones unlabeled #1861
  • Dec 04 14:11
    flavorjones closed #1861
  • Dec 04 14:11
    flavorjones commented #1861
  • Dec 04 14:04
    flavorjones milestoned #1954
  • Dec 04 14:04
    flavorjones commented #1954
Mike Dalessio
@flavorjones
Please note that I'm allowing rubinius builds to fail, pending the rbx team looking into the segfaults we've been seeing
Hopefully this is only temporary!
Thomas Walpole
@twalpole
@flavorjones Any chance at getting PR#1646 looked at in the near future?
Mike Dalessio
@flavorjones
@twalpole merged
zachylimwl
@zachylimwl

Hi, not sure if this is the place to ask this. I have a nodeset. Before iterating through it, i've created 2 new nodes. While iterating through the nodeset, I want to assign these nodes as the child of those 2 new set. So something like

nodeset.each do | node |
group1 = Nokogiri::HTML::DocumentFragment.parse("<div class='side'></div>")
group2 = Nokogiri::HTML::DocumentFragment.parse("<div class='main'></div>")
node.children.each do | child |
if some condition
group1.add_child(child)
else
group2.add_child(child)
end
end
node.add_child(group1)
node.add_child(group2)
end

But when I puts group1 or group2, i'm seeing <div class='group1'></div><child></child> instead of <div class='group1'><child></child></div> i.e. they became sibling instead of parent-child. Any idea why? The child is of type div too....

Screen Shot 2018-05-31 at 12.35.21 AM.png
Mike Dalessio
@flavorjones
@zachylimwl it might help to think of a nodeset as an array. adding something to an array appends it to the end. instead what you want to do is take the first node from the nodeset (which is a Node) and add to that
group1.first.add_child(child)
make sense?
(sorry for the delayed reply)
Mike Dalessio
@flavorjones
@/all deploying updates to concourse, expect a minute or two of downtime.
Ivan Kelly
@ivankelly
when is the next release of nokogiri slated for?
Mike Dalessio
@flavorjones
@ivankelly thanks for asking. I'm curious if there's a particular fix or feature you're interested in? There's nothing stopping us from releasing now, really. I'll try to do it this week
Christian Nguyen
@cuongaconda_twitter
I'm using an older version of libxml and can't upgrade to 2.9.4. What's the best way of making sure it changes something like i <3 you to i &lt; you rather than removing anything after the < completely. Currently, it returns thisi
Mike Dalessio
@flavorjones
@cuongaconda_twitter unfortunately nokogiri can't control how invalid markup is "fixed" by the underlying parsing libraries. In this case it is likely seeing an unclosed tag -- if you look at the document's errors you may get a better understanding of what's going on.
Joni Orponen
@Rotonen
pkg-config does not find libxml from the macos 10.14 sdk with nokogiri 1.8.4 - i can manage with a homebrew provided libxml and making a nokogiri specific bundle config, but FYI as a heads up - probably going to be a deluge of people in a few weeks
joaquindiaz01
@joaquindiaz01
Hello, i have a doubt about generating a xml file with nokogiri. This builder = Nokogiri::XML::Builder.new do |xml| ... must be executed in a initializer in rails?
which is the best practice?
Mike Dalessio
@flavorjones
@joaquindiaz01 can you explain a bit more about what you're trying to do?
For what purpose are you using the generated XML document?
Mike Dalessio
@flavorjones
@here v1.10.0.rc1 is up on rubygems
kapilpipaliya
@kapilpipaliya
I have scrolling webpage. when i goes to end of page, it loads more data. how can i parse it with nokogiri?
i want to load all the data in in.
Mike Dalessio
@flavorjones
@kapilpipaliya Answering this question will involve networking and hitting API calls involving several gems; Nokogiri is simply a wrapper for a parsing library. You may want to ask on a more general forum.
kapilpipaliya
@kapilpipaliya
thanks
Mike Dalessio
@flavorjones
@/all ci.nokogiri.org will be unavailable briefly while we upgrade to concourse 5.0.0
Mike Dalessio
@flavorjones
downtime starts now
Mike Dalessio
@flavorjones
there may be brief ci.nokogiri.org outages again today
Mike Dalessio
@flavorjones
@/all nokogiri v1.10.2 is out, see https://nokogiri.org/CHANGELOG.html for details
Mike Dalessio
@flavorjones
ci.nokogiri.org will be going down briefly for a version upgrade to concourse 5.1.0.
Mike Dalessio
@flavorjones
CI is back up
Mike Dalessio
@flavorjones
@/all ci.nokogiri.org will be going down briefly for a version upgrade to concourse v5.2.0
Mike Dalessio
@flavorjones
ci is back up
MSP-Greg
@MSP-Greg
Nokogiri API docs, wiki pages, & tutorials available at https://msp-greg.github.io/nokogiri/. API docs based on master... JFYI
Ian Kottman
@ikottman

Hello everyone. What system dependencies does nokogiri have at runtime? For example, I know it needs libxml2/libxslt to compile native extensions, but do those libraries still need to be available at runtime?

Context: I'm making a bare-bones docker image for running a rails app, and I'm scrutinizing every system dependency to determine if it's really necessary at runtime.

Mike Dalessio
@flavorjones
@ikottman Apologies for my slow response, I've been AFK for a few days. There are a few options here, including static compilation (which should be the default) so you shouldn't need libxml2/libxslt shared libraries hanging around.
@ikottman Maybe we could figure out a time to talk synchronously, either here or on a zoom/hangout about how to approach this?
Ian Kottman
@ikottman
Sure! I'll DM you to setup a time to chat
William Entriken
@fulldecent
Hello room.
This is a simple PR which allows Nokogiri to be used with HTML5 validators. // sparklemotion/nokogiri#1918
Requesting review please.
Mike Dalessio
@flavorjones
@fulldecent ACK. Just commented on the PR and will review ASAP
Qqwy / Wiebe-Marten
@Qqwy
Hi!

When doing the following:

Nokogiri::HTML.fragment("<a href='https://foo.com?a=1&b=2").to_s                                                    
# => "<a href=\"https://foo.com?a=1&amp;b=2\"></a>"

in the output, the ampersand is escaped

Am I doing something wrong here?
(My real use-case is iterating over all a[href]s in the document and altering the URLS)
Nokogiri::HTML("<a href='https://foo.com'>foo</a>").search("//a").each do |n| n.attributes["href"].value = "https://foo.com?q=a&x=y" end.to_s
Qqwy / Wiebe-Marten
@Qqwy
Hmm, I learned something new today!
Turns out that ampersands should always be escaped inside URLs.
I only hope that no double escaping will happen, where &amp; is expanded into &amp;amp; in this example