Skip to content
This repository
tag: v4.5.3
Fetching contributors…

Cannot retrieve contributors at this time

file 397 lines (280 sloc) 16.113 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397
4.5.1
Removes .rvmrc and Gemfile.lock from version control (devs should deal with these themselves)
HYDRA-837: ActiveFedora::Datastreams#has_file_datastream should support :versionable argument (re-opened)
HYDRA-838: Solr connection timeout is now 120 seconds

4.5.0
HYDRA-837: ActiveFedora::Datastreams#has_file_datastream should support :versionable argument
implement per-class and per-instance defaults from rubydora 0.5.13
bump to Rubydora 0.5.13
add has_metadata :autocreate boolean that allows datastream to /not/ be created when a new object is saved
add an after_rollback handler to update the SolrService when an object is rolled back

4.4.1
HYDRA-834 find(:all) should work on ActiveFedora::Base
update AF to hide the deprecation warnings introduced in rubydora 0.5.11

4.4.0
Updated gem dependencies
Deprecated #find_by_solr()
Added compatibility with Rubydora 0.5.10
HYDRA-833 find_by_conditions should accept conditions as a string or a hash
HYDRA-696 ActiveModel::Dirty to track @ng_xml
HYDRA-830: Parsing has_model_s for model name

4.3.0
Added the #delegate_to method for easier delegation of multiple terms to the same datastream.
Deprecated AF::Base#file_streams
Deprecated AF::Base#to_xml
HYDRA-826 Added SimpleDatastream as a replacement for MetadataDatastream

4.2.0
Added Base.find_each which allows yielding of each result
Added Base.find_in_batches which allows yielding of a chunk of solr results
Added ActiveFedora::NtriplesRDFDatastream
Rubydora to 0.5.9
HYDRA-726 integration tests verify versionable attribute of datastreams
HYDRA-811 allow setting a pid after object is initialized, but before it is saved
find(:all) must use solr paramater qt=standard
HYDRA-812 belongs_to should replace assertions, even if the asserted object is not found.
HYDRA-814 add clone()
HYDRA-815 give :type a default value (ActiveFedora::Datastream) for has_file_datastream
HYDRA-816 Sharding works automatically if multiple connections are specified in fedora.yml
HYDRA-818 Assign_pid should work correctly when the config is not sharded.

4.1.0
ActiveFedora::Base.find() now supports filtering by solr fields (boolean AND).
* example: ModsAsset.find('title_t' => 'Song of Fire and Ice','author_t'=>['Agatha Christie', 'Dr. Seuss']
ActiveFedora::Base.find_with_conditions which is the replacement for ActiveFedora::Base.find_by_fields_by_solr (previously deprecated)
YAML configurations are loaded through ERB, allowing reference to evaluated Ruby or environment variables
When setting ng_xml= with a Nokogiri node, cast it to a new Nokogiri document

4.0.0
Removed deprecations
  * allowing :fedora level in fedora.yml
  * automatic includes of Relationships and FileMethods is removed
Added sharding
Added find_document which determines the correct model and then casts the object to that.
Improved loading from solr
RDF datastreams
Replaced solr-ruby with rsolr. Note: remove any calls to .hits
load_instance is now deprecated, replaced with find
Find and load_instance_from_solr always instantiate the model defined in the object.
Run a stub :environment task in the fixture loading rake tasks (which is overridden by rails)
Find raises ObjectNotFoundError when the object isn't found
Removed dependency on solrizer-fedora
Avoid unnecessary reload of RELS-EXT when typecasting
HYDRA-754 Delegate discovery of config parameters to a separate module to allow for non-file-based configuration
HYDRA-753 has_metadata should accept :versionable as part of the spec.
HYDRA-755 Instantiate un-spec'ed datastreams in SolrDigitalObject
HYDRA-758 Added ActiveFedora::Base.exists?
Fixes for Ruby 1.9 compatibility
HYDRA-741 Use fixture loader in repo:* rake tasks. Parameters changed to foxml and dir.
rubydora to 0.5.7
Lazily load solr config
HYDRA-766 Model#classname_from_uri singularizes terms, but it shouldn't change them.
HYDRA-767 Remove Model::DEFAULT_NS
Upgrade Om to 1.6.0
QualifiedDublinCore now extends immediately from NokogiriDatastream
Deprecated MetadataDatastream
HYDRA-755 Succeed with loading from solr even if the object was missing a declared datastream

3.3.2
HYDRA-745 No need to require :url be present on external datastreams
Initialize relationships graph to empty array
HYDRA-668 ActiveFedora models do not need to be immediate descendants of ActiveFedora::Base
Fix for camel cased classes in classname from uri
HYDRA-746 Speed up find() by not hitting solr first
Added description for active_fedora:load_fixtures task
HYDRA-748 Allow setting versionable via has_metadata


3.3.1
Allow explicit setting of predicate config.
Check for appropriate content before saving a datastream
rubydora to 0.5.2
Support for changing base fixture directory path
Removed unnecessary dependencies

3.3.0
A label set on an unsaved datastream should be saved in the repository
Should be able to add checksumType parameter when creating a datastream
Upgrade rubydora to 0.5.1 so we can do checksum verification
Pass checksumVerification parameter to rubydora
Allow you to override the class of file datastream that gets created by using ActiveFedora::Base.has_file_datastream
Allow `predicate_mappings.yml` to specify explicit namespace prefixes to use instead of ns0, ns1, ..., nsN when serializing a `RelsExtDatastream`.
HYDRA-737 fixes for tests failing under ree 1.8.7-2011.12

3.2.2
Rubydora 0.4.1
Fixed bugs where updating datastream properties would overwrite content.
HYDRA-661: Changed namespaces and names or rake tasks according to HYDRA-661 with the exception that harvest was renamed export

3.2.1
Load rake tasks.
Rubydora 0.4.0
Added fixture exporter

3.2.0

Deprecate ContentModel.pid_from_ruby_class, use Model.to_class_uri instead
Added a count method
HYDRA-731 running count on a has_many relationship returns zero unless the relationship has been loaded
Added ActiveModel validations.
Added callbacks on initialize, save, update, create, delete and find
Added Base.create
HYDRA-730 ActiveFedora isn't being initialized unless it is specified in the project Gemfile
Don't create pids until save so that we don't cycle through pids we don't intend to save
inspect method gives less information (more readable)
Added an equality method
Deprecate the automatic inclusion of datastream_collections (you should include this optional module in your models if you intend to use it)
Deprecate the automatic inclusion of relationships (you should include this optional module in your models if you intend to use it)
Deprecate the automatic inclusion of file_management (you should include this optional module in your models if you intend to use it)
Disseminators have been added
HYDRA-729 don't update xml datastreams unless they've changed
Added adapt_to method to reduce number of round trips to fedora.
ActiveFedora::Relationship is deprecated (was not being used)
Rails 3.1 compatibility
Ruby 1.9 compatibility

3.1.6
HYDRA-733 When serializing, MetadataDatastream does not load the existing content, so it can overwrite with blank

3.1.5
HYDRA-722 updating AF::Base#label= and then saving doesn't persist the change
JettyWrapper to 1.2.0
Upgrade to rspec2
add_file_datastream should take a prefix option.
Added assert_content_model method
Updates for ruby 1.9 compatibility

3.1.4
Update rubydora to 0.2.6
Created a consistent implementation of Model.classname_from_uri

3.1.3
Set mimeType for all datastreams, default to text/xml
Update rubydora to 0.2.4

3.1.2
correctly handling non-default pid_namespace (Benjamin Armintor)
info uri support; rdf:type predicate compatibility with Fedora(Benjamin Armintor)
more flexibility for initializing Rubydora (Michael B. Klein)
NokogiriDatastream and RELS-EXT datastream set mimeType (Justin Coyne)


3.1.1
adds support for better handling of literal values in the RELS-EXT datastream.
adds support for setting the controlGroup via a parameter to has_metadata.
ability to pass a predicate as a parameter to AF::Base#relationships to get a list of the matching targets. This reads a bit better than ids_for_outbound().
refactoring to support overriding certain sections (ContentModel) by consumers of active-fedora.

3.1.0
Based on rubydora for fedora interface
RDF-xml for the relationships

3.0.4

HYDRA-663 -- Passing an empty string to a id setter should clear the belongs to association

3.0.3

Added HasAndBelongsToManyAssociation

3.0.2

YANKED


3.0.1

HYDRA-654 -- Fixed reification using has_model as the class instead of active_fedora_model

3.0.0

added belongs_to and has_many model relationships
added nested_attributes_for
Added dependency on rails > 3.0.0

2.3.7

HYDRA-650 -- Fixed relationship inheritance (Rick Johnson)

2.3.6

YANKED
Removed Bundler.require, which was causing odd dependency order resolving.

2.3.5

YANKED
branched so that trunk now require rails 3.
Named finders HYDRA-541 (Rick Johnson)

2.3.4

moved dirty assignment to NokogiriDatastream#update_values; added test (Benjamin Armintor)
Fixed HYDRA-590

2.1.0

HYDRUS-151: Base.update_datastream_attributes now relies on update_indexed_attributes instead of update_attributes. This makes it easier to support non-javascript forms (and makes update_datastream_attributes worth using).

2.0.4

collection_members_append now returns self.

2.0.3

HYHULL-25: tweaking ContentModel to ignore namespace

2.0.2

Fixed activeresource requirement in specfile
Switched Bundler to rely on specfile for runtime dependencies.

2.0.1

Made Gemfile agnostic about Rails version (dependency on activeresource)

2.0.0

Upgraded to use solrizer 1.0.0, which uses RSolr instead of the outdated ruby-solr:

  All solrize and extract methods now accept and return a _Hash_ rather than a Solr::Document
  As part of this switch, *all field names are stored as Strings, not Symbols*. If you previously accessed something as solr_doc[:title_t], now you need to access it as solr_doc["title_t"]

1.2.9
Minor: Fixed Gemfile to require activeresource <3.0.0 NOT >3.0.0

1.2.6

Requires Solrizer 0.3.0 or higher

HYDRA-274 Configurable Facets
HYDRA-275 Update ActiveFedora to use Solrizer::XML::TermBasedSolrizer when indexing NokogiriDatastreams

1.2.5 -- botched version release

1.2.4

Bug: Base.file_objects_append wasn't saving the child object after modifying its RELS-EXT

1.2.3

Major: Switched flow of relationship assertions for file objects. Now children assert isPartOf rather than parents asserting hasCollectionMember (see HYDRA-70 and HYDRA-71)

New class method: ActiveFedora::Base#has_bidirectional_relationship creates relationship finder methods that search across bidirectional relationships (ie. finds all of the object's hasPart assertions as well as any objects pointing at it with isPartOf)

Feature: Fedora::Connection now returns the Fedora error in any ServerError messages

Documentation: Added RDoc code comments for experimental features from version 1.2

Bug: MetadataDatastream.update_indexed_attributes doesn't get tripped up by attribute names wrapped in arrays (previously wrapping the symbol in an array would cause an error

Bug: Applied some fixes to usage of URIs in SemanticNode

1.2.2

Misc bug fixes

1.2.1

TERMPORARY: removed solrizer from gem dependency list (cyclic reference breaks bundler)

1.2

Now support using OM::XML::Terminologies in NokogiriDatastreams

resolved #504 -- Allow SSL certificate client authentication for connections to Fedora

Added Experimental methods for has_datastream, named_datastream, and remove_relationship (contributed by Rick Johnson at Notre Dame)

1.1.13

MetadataDatastream.update_indexed_attributes was no longer marking the object dirty when triggered. Resulted in changed datastreams not saving. Fixed now.

1.1.12

* Minor fix to Base.get_values_from_datstream (wasn't returning default values when necessary)

1.1.11

* fix to update_index preventing double-metadata
* now nokogiri datastreams initialize with default template.

1.1.8

solrizer fix to ensure that Nokogiri Datastreams are included in Base.to_solr

1.1.7

Nokogiri Datastream support using Nokogiri and OM::XML. Includes indexing of xml contents into solr based on accessors declared using OM::XML:Accessor module.
You now have the option of calling has_metadata without passing in a block


1.1.6

Bug #959: Base.delete fails to delete objects from Solr even when ENABLE_SOLR_UPDATES == true

1.1.5

Feature: Base.save triggers Solrizer if you've required the gem in your app

1.1.2

Bug: Model.find_by_solr fails when you pass it an argument of :all
Testing: Updated RSpec tests to run against localhost:8983 with Fedora 3.3 (instead of localhost:8080 with Fedora 3.2). This means you can use a copy of hydra-jetty from http://github.com/hydraproject/hydra-jetty
Testing: Reduced the amount of noise output to the shell during tests

1.1.1 2010-03-22

Bug: .load_objects wipes out datastream attributes from model-defined datastreams (ie. label and mimeType)

1.1.0 2010-03-20

Feature #822: Export & Ingest Fedora Objects

1.0.9 2010-03-10

!! Requires a new Solr schema by default. We recommend updating solr with the schema.xml located at http://bitbucket.org/mediashelf/active_fedora/src/tip/solr/config/schema.xml. If you want to keep using the old schema.xml, you must save the solr mappings file from http://bitbucket.org/mediashelf/active_fedora/src/tip/config/solr_mappings_af_0.1.yml as config/solr_mappings.yml in your application(s).

Bundled ruby-fedora into active-fedora, removing external gem dependency

Field names now map to solr field names using solr_mappings.yml. You can put your own into RAILS_ROOT/config/solr_mappings.yml or rely on the default within the gem.

* Bug #552: Model relationship should be asserted using hasModel instead of conformsTo
* Bug #614: Datastream should have mime_type accessors
* Bug #692: Datastream.new should allow you to use :mime_type as an argument instead of :mimeType
* Feature #430: YAML-based config files for Fedora Repository and SolrService
* Feature #475: Ability to perform XUpdate-style partial updates of XML metadata
* Feature #753: Configurable Solr Field Names
* Feature #807: update_indexed_attributes should return the new index for any added values

1.0.7 2009-09-18

Performance improvements. Requires RubyFedora 1.0.7 (but will probably work with 1.0.5)

Feature #489: Optimize datastreams method so that you only hit fedora and parse xml when you have to
Bug #415: Base.save returns meaningful responses and yields exceptions when appropriate
Bug #465: ActiveFedora::Base#fields method performance issues (tied to #489)


1.0.6 2009-08-27

Minor update.

* ToDo #78: Relationship finders should return an array of ActiveFedora Objects
* Bug #40: Fedora::Datastream should track control_group attribute correctly
* Bug #425: SOLR_DOCUMENT_ID still hardcoded as "id" in a few spots
* Bug #449: using has_metadata breaks support for custom pids

1.0.5 2009-07-17

Minor update.

* Bug #387: Base.deserialize should mark all datastreams as not new
* ToDo #389: Base.update_attributes and Base.update_indexed_attributes should accept :datastream limiter
* Feature #388: Base.update_attributes and Base.update_indexed_attributes should support deleting fields

1.0.4 2009-07-10

!! Not Backwards Compatible with Fedora < 3.2.* !!

* 1 major enhancement:
  * ruby-fedora is now compatible with Fedora 3.2.1
  
Changelog:
* ToDo #272: Datastream.new should accept a :prefix option for auto-incrementing DSIDs
* ToDo #275: Update RubyFedora to work with Fedora 3.2 REST API
* ToDo #308: ActiveFedora::FedoraObject.datatsreams should load label as well as pid and dsId
* ToDo #318: Intelligent FileDatastream and FileAsset Management
* Bug #312: Base.delete should delete the solr record as well as the Fedora Object
* Feature #46: Improve OSX Fedora/Solr Disk Image
* Feature #284: solr document id should by a config option instead of hard coded as "id"
* Feature #307: ActiveFedora::Base should provide a label setter.
* Feature #314: Relationship finder should provide a "response_format" option, default to format of "objects"
* Feature #327: Option to turn off solr updates (assume that something else will update Solr for you)
Something went wrong with that request. Please try again.