<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/ext/fiddle/fiddle.gemspec, branch v3_0_4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Import fiddle-1.0.4 (#3860)</title>
<updated>2020-12-11T00:41:12+00:00</updated>
<author>
<name>Kenta Murata</name>
<email>mrkn@users.noreply.github.com</email>
</author>
<published>2020-12-11T00:41:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9b0c36b39032cffff3c62a2b0e1fc38fa429f5ea'/>
<id>9b0c36b39032cffff3c62a2b0e1fc38fa429f5ea</id>
<content type='text'>
I don't use tool/sync_default_gem.rb because the last sync was incomplete.

Co-authored-by: Hiroshi SHIBATA &lt;hsbt@ruby-lang.org&gt;
Co-authored-by: Alan Wu &lt;XrXr@users.noreply.github.com&gt;
Co-authored-by: sinisterchipmunk &lt;sinisterchipmunk@gmail.com&gt;
Co-authored-by: Sutou Kouhei &lt;kou@clear-code.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I don't use tool/sync_default_gem.rb because the last sync was incomplete.

Co-authored-by: Hiroshi SHIBATA &lt;hsbt@ruby-lang.org&gt;
Co-authored-by: Alan Wu &lt;XrXr@users.noreply.github.com&gt;
Co-authored-by: sinisterchipmunk &lt;sinisterchipmunk@gmail.com&gt;
Co-authored-by: Sutou Kouhei &lt;kou@clear-code.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Remove needless workaround</title>
<updated>2020-11-18T00:05:13+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@clear-code.com</email>
</author>
<published>2020-11-16T23:51:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ceccc16589f97c4e2e95c7ae655551c1e54f5f8b'/>
<id>ceccc16589f97c4e2e95c7ae655551c1e54f5f8b</id>
<content type='text'>
It's fixed in upstream.
https://github.com/MSP-Greg/ruby-loco/issues/4

https://github.com/ruby/fiddle/commit/2ae0ff4934
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It's fixed in upstream.
https://github.com/MSP-Greg/ruby-loco/issues/4

https://github.com/ruby/fiddle/commit/2ae0ff4934
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Add workaround for ruby head for mingw</title>
<updated>2020-11-18T00:05:13+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@clear-code.com</email>
</author>
<published>2020-11-16T21:54:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3b385c33b840218a51736946624de5b0226d52c8'/>
<id>3b385c33b840218a51736946624de5b0226d52c8</id>
<content type='text'>
https://github.com/ruby/fiddle/commit/bb227c206d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/fiddle/commit/bb227c206d
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Use msys2_mingw_dependencies</title>
<updated>2020-11-18T00:05:13+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@clear-code.com</email>
</author>
<published>2020-11-16T21:44:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=821cfa74cb6c5b778928e880c08d61265e539c60'/>
<id>821cfa74cb6c5b778928e880c08d61265e539c60</id>
<content type='text'>
https://github.com/ruby/fiddle/commit/fee175a8ff
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/fiddle/commit/fee175a8ff
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Add a "pinning" reference (#44)</title>
<updated>2020-11-18T00:05:13+00:00</updated>
<author>
<name>Aaron Patterson</name>
<email>tenderlove@ruby-lang.org</email>
</author>
<published>2020-08-02T21:26:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=307388ea19f5c9d1c8c417d1979c40d970b420a2'/>
<id>307388ea19f5c9d1c8c417d1979c40d970b420a2</id>
<content type='text'>
* Add a "pinning" reference

A `Fiddle::Pinned` objects will prevent the objects they point to from
moving.  This is useful in the case where you need to pass a reference
to a C extension that keeps the address in a global and needs the
address to be stable.

For example:

```ruby
class Foo
  A = "hi" # this is an embedded string

  some_c_function A # A might move!
end
```

If `A` moves, then the underlying string buffer may also move.
`Fiddle::Pinned` will prevent the object from moving:

```ruby
class Foo
  A = "hi" # this is an embedded string

  A_pinner = Fiddle::Pinned.new(A) # :nodoc:

  some_c_function A # A can't move because of `Fiddle::Pinned`
end
```

This is a similar strategy to what Graal uses:

  https://www.graalvm.org/sdk/javadoc/org/graalvm/nativeimage/PinnedObject.html#getObject--

* rename global to match exception name

* Introduce generic Fiddle::Error and rearrange error classes

Fiddle::Error is the generic exception base class for Fiddle exceptions.
This commit introduces the class and rearranges Fiddle exceptions to
inherit from it.

https://github.com/ruby/fiddle/commit/ac52d00223
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add a "pinning" reference

A `Fiddle::Pinned` objects will prevent the objects they point to from
moving.  This is useful in the case where you need to pass a reference
to a C extension that keeps the address in a global and needs the
address to be stable.

For example:

```ruby
class Foo
  A = "hi" # this is an embedded string

  some_c_function A # A might move!
end
```

If `A` moves, then the underlying string buffer may also move.
`Fiddle::Pinned` will prevent the object from moving:

```ruby
class Foo
  A = "hi" # this is an embedded string

  A_pinner = Fiddle::Pinned.new(A) # :nodoc:

  some_c_function A # A can't move because of `Fiddle::Pinned`
end
```

This is a similar strategy to what Graal uses:

  https://www.graalvm.org/sdk/javadoc/org/graalvm/nativeimage/PinnedObject.html#getObject--

* rename global to match exception name

* Introduce generic Fiddle::Error and rearrange error classes

Fiddle::Error is the generic exception base class for Fiddle exceptions.
This commit introduces the class and rearranges Fiddle exceptions to
inherit from it.

https://github.com/ruby/fiddle/commit/ac52d00223
</pre>
</div>
</content>
</entry>
<entry>
<title>Update the license for the default gems to dual licenses</title>
<updated>2020-08-18T11:26:39+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2020-08-18T11:15:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=8fb02b7a97317090e3946e6f2d4a7d034f9699f1'/>
<id>8fb02b7a97317090e3946e6f2d4a7d034f9699f1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Support MSWIN (#43)</title>
<updated>2020-06-27T14:54:09+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@cozmixng.org</email>
</author>
<published>2020-06-27T02:01:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f2bcdc7283f2137e0916e251df3a52c40b1f6151'/>
<id>f2bcdc7283f2137e0916e251df3a52c40b1f6151</id>
<content type='text'>
https://github.com/ruby/fiddle/commit/f16e7ff6e0
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/fiddle/commit/f16e7ff6e0
</pre>
</div>
</content>
</entry>
<entry>
<title>ext/fiddle/fiddle.gemspec: avoid require lib/fiddle/version.rb</title>
<updated>2020-05-23T19:01:20+00:00</updated>
<author>
<name>Yusuke Endoh</name>
<email>mame@ruby-lang.org</email>
</author>
<published>2020-05-23T18:58:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f27e0d90c865a19d42c222a82e13ee4c40352bf7'/>
<id>f27e0d90c865a19d42c222a82e13ee4c40352bf7</id>
<content type='text'>
It loads `ext/fiddle/lib/fiddle/version.rb`, which causes constant
redefinition warning:

http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200523T153003Z.log.html.gz
```
[ 6317/20193] TestDefaultGems#test_validate_gemspec/home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/ext/fiddle/lib/fiddle/version.rb:2: warning: already initialized constant Fiddle::VERSION
/home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/.ext/common/fiddle/version.rb:2: warning: previous definition of VERSION was here
 = 0.16 s
```

This changeset read the version by manual parsing hack which is also
used in stringio and zlib.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It loads `ext/fiddle/lib/fiddle/version.rb`, which causes constant
redefinition warning:

http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200523T153003Z.log.html.gz
```
[ 6317/20193] TestDefaultGems#test_validate_gemspec/home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/ext/fiddle/lib/fiddle/version.rb:2: warning: already initialized constant Fiddle::VERSION
/home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/.ext/common/fiddle/version.rb:2: warning: previous definition of VERSION was here
 = 0.16 s
```

This changeset read the version by manual parsing hack which is also
used in stringio and zlib.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Update file list</title>
<updated>2020-05-23T05:29:16+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@clear-code.com</email>
</author>
<published>2020-04-18T06:56:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=74a4558c146556a5b3b9b8f4d074d5a3deeb7841'/>
<id>74a4558c146556a5b3b9b8f4d074d5a3deeb7841</id>
<content type='text'>
https://github.com/ruby/fiddle/commit/b04cb92d7b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/fiddle/commit/b04cb92d7b
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/fiddle] Add Fiddle::VERSION</title>
<updated>2020-05-23T05:29:16+00:00</updated>
<author>
<name>Sutou Kouhei</name>
<email>kou@clear-code.com</email>
</author>
<published>2020-04-18T06:51:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=13f64333ea6c6b904274cb1a95d2bc82236e9237'/>
<id>13f64333ea6c6b904274cb1a95d2bc82236e9237</id>
<content type='text'>
https://github.com/ruby/fiddle/commit/9dcf64c096
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/fiddle/commit/9dcf64c096
</pre>
</div>
</content>
</entry>
</feed>
