by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 01:47
    renugasaraswathy starred sparklemotion/nokogiri
  • Aug 04 23:10
    nwellnhof commented #2059
  • Aug 04 23:08
    dreamthink starred sparklemotion/nokogiri
  • Aug 04 20:30
    flavorjones commented #2058
  • Aug 04 19:06
    flavorjones edited #2058
  • Aug 04 18:17
    flavorjones closed #2059
  • Aug 04 18:17
    flavorjones commented #2059
  • Aug 04 17:53
    nwellnhof commented #2059
  • Aug 04 17:08
    AppVeyorBot commented #2058
  • Aug 04 15:59
    codeclimate[bot] commented #2058
  • Aug 04 15:53
    flavorjones synchronize #2058
  • Aug 04 15:53

    flavorjones on flavorjones-explore-comment-errors

    add tests describing behavior d… Add a patch to libxml2 to close… (compare)

  • Aug 04 15:53

    flavorjones on master

    ci: remove ruby-2.3 from appvey… (compare)

  • Aug 04 15:09
    nwellnhof commented #2059
  • Aug 04 14:04
    AppVeyorBot commented #2058
  • Aug 04 13:59
    flavorjones edited #2059
  • Aug 04 13:52
    flavorjones opened #2059
  • Aug 04 12:48
    codeclimate[bot] commented #2058
  • Aug 04 12:48
    flavorjones synchronize #2058
  • Aug 04 12:48

    flavorjones on flavorjones-explore-comment-errors

    add tests describing behavior d… Add a patch to libxml2 to close… (compare)

Mike Dalessio
@flavorjones
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
Shlomi Fish
@shlomif
hi all! The "tutorials" link here is broken - https://nokogiri.org/
Mike Dalessio
@flavorjones
expect a few minutes of CI downtime, updating to https://github.com/concourse/concourse/releases/tag/v6.0.0
guillermo haas-thompson
@memoht
I am strugglebussing to parse an XML feed with Nokogiri to create records in a Rails database. I've tried multiple times over the years to get an XML feed to parse and managed to avoid it by going other routes (CSV import, JSON files, hitting API). I have a new task for a side project that is forcing me to revisit XML parsing. I think my example is straightforward enough, and wondering if anyone has a few to help me through this. [Simplified example: https://gist.github.com/memoht/1dc78f0f005abbb8d01267519ce386f1]