gb_mapfish_appserver 1.1.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  class Group < ActiveRecord::Base
2
2
  has_and_belongs_to_many :roles
3
3
  has_many :groups_users
4
- has_many :users, :through => :groups_users, :conditions => {'groups_users.granted' => true}
4
+ has_many :users, :through => :groups_users, :conditions => ["groups_users.granted = true"]
5
5
 
6
6
  attr_protected []
7
7
 
@@ -113,9 +113,9 @@ EOS
113
113
  #logger.info "************************* Attribute for name '#{name}': #{@attrs[name].inspect}"
114
114
  end
115
115
 
116
- def query_fields(ability)
116
+ def query_fields(ability, client_srid)
117
117
  return '' if feature_class.nil?
118
- ([pkey]+ident_fields_for(ability)+[feature_class.extent_field, feature_class.area_field]).join(',')
118
+ ([pkey]+ident_fields_for(ability)+[feature_class.extent_field(client_srid), feature_class.area_field(client_srid)]).join(',')
119
119
  end
120
120
 
121
121
  def ident_fields_for(ability)
@@ -128,7 +128,7 @@ EOS
128
128
  allowed_fields
129
129
  end
130
130
 
131
- def query(ability, query_topic, searchgeo, nearest=nil, user=nil)
131
+ def query(ability, query_topic, searchgeo, nearest=nil, user=nil, client_srid=nil)
132
132
  # use layer setting by default
133
133
  nearest = search_nearest if nearest.nil?
134
134
 
@@ -151,16 +151,16 @@ EOS
151
151
  logger.debug "******** query_topic: #{query_topic} ***************************************************"
152
152
  features = if custom_query_method
153
153
  logger.debug "*** Custom query on layer #{name}: #{query_topic.inspect}"
154
- feature_class.send(custom_query_method, self, query_topic, searchgeo)
154
+ feature_class.send(custom_query_method, self, query_topic, searchgeo, client_srid)
155
155
  elsif feature_class.respond_to?(:identify_query)
156
156
  logger.debug "*** Custom identify_query on layer #{name}"
157
- feature_class.identify_query(self, query_topic, searchgeo, ability, user)
157
+ feature_class.identify_query(self, query_topic, searchgeo, ability, user, client_srid)
158
158
  else
159
- logger.debug "*** Identify on layer #{name} with query fields #{query_fields(ability)} at #{searchgeo.inspect}"
160
- feature_class.identify_filter(searchgeo, searchdistance, nearest).where(where_filter).select(query_fields(ability)).all
159
+ logger.debug "*** Identify on layer #{name} with query fields #{query_fields(ability, client_srid)} at #{searchgeo.inspect}"
160
+ feature_class.identify_filter(searchgeo, searchdistance, nearest, client_srid).where(where_filter).select(query_fields(ability, client_srid)).all
161
161
  end
162
162
  logger.debug "Number of features: #{features.size}"
163
- # calculate bbox of all features
163
+ # calculate bbox of all features (in client_srid)
164
164
  unless features.empty?
165
165
  envelope = GeoRuby::SimpleFeatures::Geometry.from_hex_ewkb(features.first['extent']).envelope
166
166
  features.each do |feature|
@@ -170,7 +170,7 @@ EOS
170
170
  bbox = [envelope.lower_corner.x, envelope.lower_corner.y, envelope.upper_corner.x, envelope.upper_corner.y]
171
171
  end
172
172
  rescue Exception => e
173
- features = "Table: <b>#{table}</b><br/>Exception: #{e}<br/>query fields: #{query_fields(ability)}<br/>db fields: #{feature_class.column_names.join(',')}<br/>missing: <font color='red'>#{(query_fields(ability).split(',') - feature_class.column_names).join(', ')}</font><br/><br/>"
173
+ features = "Table: <b>#{table}</b><br/>Exception: #{e}<br/>query fields: #{query_fields(ability, client_srid)}<br/>db fields: #{feature_class.column_names.join(',')}<br/>missing: <font color='red'>#{(query_fields(ability, client_srid).split(',') - feature_class.column_names).join(', ')}</font><br/><br/>"
174
174
  logger.info "Identify error on layer #{name} #{features}"
175
175
  end
176
176
  [self, features, bbox]
@@ -8,7 +8,7 @@ class LocateRule
8
8
  end
9
9
 
10
10
  # get selection and extent for located features
11
- def locate(locations)
11
+ def locate(locations, client_srid=nil)
12
12
  features = if layer.nil?
13
13
  # user defined model
14
14
  seltopic = model.selection_topic
@@ -16,7 +16,7 @@ class LocateRule
16
16
  selproperty = model.primary_key
17
17
  selscalerange = model.selection_scalerange
18
18
  search_locs = model.search_locations(locations)
19
- model.locate(search_locs)
19
+ model.locate(search_locs, client_srid)
20
20
  else
21
21
  # generic SearchModel
22
22
  layer_obj = Layer.find_by_name(layer)
@@ -25,7 +25,7 @@ class LocateRule
25
25
  selproperty = layer_obj.feature_class.primary_key
26
26
  selscalerange = model.selection_scalerange
27
27
  search_locs = locations.split(',')
28
- model.layer_locate(layer_obj, search_field, search_locs)
28
+ model.layer_locate(layer_obj, search_field, search_locs, client_srid)
29
29
  end
30
30
  if features.present?
31
31
  x, y, scale = model.map_center(features)
@@ -10,7 +10,7 @@ class SearchModel < GeoModel
10
10
  raise NotImplementedError.new
11
11
  end
12
12
 
13
- def self.locate(locations)
13
+ def self.locate(locations, client_srid=nil)
14
14
  #return {:features => []}
15
15
  raise NotImplementedError.new
16
16
  end
@@ -28,9 +28,9 @@ class SearchModel < GeoModel
28
28
  end
29
29
 
30
30
  #Generic location search with one search field
31
- def self.layer_locate(layer, search_field, locations)
31
+ def self.layer_locate(layer, search_field, locations, client_srid=nil)
32
32
  feature_class = layer.feature_class
33
- feature_class.where(search_field => locations).select(feature_class.primary_key).select(feature_class.extent_field).limit(LOCATE_MAX_COUNT).all
33
+ feature_class.where(search_field => locations).select(feature_class.primary_key).select(feature_class.extent_field(client_srid)).limit(LOCATE_MAX_COUNT).all
34
34
  end
35
35
 
36
36
  # "261,AU4998$261,AU4999" -> [["261","AU4998"],["261","AU4999"]]
@@ -179,12 +179,12 @@ class Topic < ActiveRecord::Base
179
179
  perms.collect(&:role)
180
180
  end
181
181
 
182
- def query(ability, query_topic, searchbbox, nearest=nil, user=nil)
182
+ def query(ability, query_topic, search_geom, nearest=nil, user=nil, client_srid=nil)
183
183
  active_layers = query_topic['layers'].split(',')
184
184
  qlayers = query_layers(ability, active_layers)
185
185
  results = []
186
186
  qlayers.each do |layer|
187
- result = layer.query(ability, query_topic, searchbbox, nearest, user)
187
+ result = layer.query(ability, query_topic, search_geom, nearest, user, client_srid)
188
188
  results << result unless result.nil?
189
189
  end
190
190
  results
@@ -14,13 +14,13 @@ class User < ActiveRecord::Base
14
14
  has_and_belongs_to_many :roles
15
15
 
16
16
  has_many :groups_users, :dependent => :destroy
17
- has_many :groups, :through => :groups_users, :conditions => {'groups_users.granted' => true}
17
+ has_many :groups, :through => :groups_users, :conditions => ["groups_users.granted = true"]
18
18
 
19
19
  accepts_nested_attributes_for :groups_users
20
20
 
21
21
  serialize :app_infos, JSON
22
22
 
23
- attr_accessible :login, :name, :email, :password, :password_confirmation, :remember_me, :requested_group, :groups_users_attributes, :app_infos
23
+ attr_accessible :login, :name, :email, :password, :password_confirmation, :remember_me, :requested_group, :group_ids, :groups_users_attributes, :app_infos
24
24
 
25
25
  before_create :add_requested_group
26
26
 
@@ -54,7 +54,7 @@
54
54
  <% unless groups_user.user.app_infos.nil? %>
55
55
  <dl class="dl-horizontal">
56
56
  <% groups_user.user.app_infos.sort.each do |key, value| %>
57
- <dt><%= key %></dt>
57
+ <dt title="<%= key %>"><%= key %></dt>
58
58
  <dd><%= value %></dd>
59
59
  <% end %>
60
60
  </dl>
@@ -102,8 +102,6 @@ Devise.setup do |config|
102
102
  # config.confirmation_keys = [ :email ]
103
103
 
104
104
  # ==> Configuration for :rememberable
105
-
106
- config.use_salt_as_remember_token = true
107
105
 
108
106
  # The time the user will be remembered without asking for credentials again.
109
107
  # config.remember_for = 2.weeks
@@ -15,6 +15,8 @@ Gem::Specification.new do |s|
15
15
  s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
16
16
  s.test_files = s.files.grep(%r{^(test|spec|features)/})
17
17
 
18
+ s.required_ruby_version = '>= 2.3'
19
+
18
20
  s.add_dependency "rails", "~> 3.2.13"
19
21
  s.add_dependency "json"
20
22
  s.add_dependency "acts_as_tree", "0.2.0"
@@ -25,15 +27,17 @@ Gem::Specification.new do |s|
25
27
  s.add_dependency "rails_admin", "~> 0.4.9"
26
28
 
27
29
  s.add_dependency "fastercsv" # required for rails_admin and Ruby <= 1.8
28
- s.add_dependency "sass", "~> 3.2.12" # rails_admin 0.0.5 does not work with sass >=3.3
29
30
 
30
- s.add_dependency "GeoRuby", ">= 0.1.4" #used for reading envelope, e.g. in GeoModel#bbox
31
+ # bootstrap-sass 2.3.2.2 throws 'NoMethodError: undefined method `load_paths' for Sass:Module'
32
+ s.add_dependency "bootstrap-sass", "2.2.2.0"
33
+
34
+ s.add_dependency "georuby" #"~- 0.1.4" #used for reading envelope, e.g. in GeoModel#bbox
31
35
 
32
36
  s.add_dependency "rgeo", "~> 0.3.20"
33
37
  s.add_dependency "rgeo-geojson", "~> 0.2.3"
34
38
 
35
39
  s.add_dependency "hpricot" # Cascaded WMS FeatureInfo parsing
36
40
 
37
- s.add_dependency "pg", "~> 0.14.0"
41
+ s.add_dependency "pg", ">= 0.18.0"
38
42
  s.add_dependency "activerecord-postgis-adapter", "0.4.1"
39
43
  end
@@ -21,9 +21,30 @@ module GbMapfishAppserver
21
21
  module Array
22
22
 
23
23
  def to_geojson(options = {})
24
+ # get CRS from first feature
25
+ if any? && first.respond_to?('geojson_srid')
26
+ crs = first.geojson_srid
27
+ # skip GeoJSON CRS in features
28
+ options.merge!({:skip_feature_crs => true})
29
+ end
30
+
24
31
  geojson = '{"type": "FeatureCollection", "features": ['
25
32
  geojson << collect {|e| e.to_geojson(options) }.join(',')
26
- geojson << ']}'
33
+ geojson << ']'
34
+
35
+ unless crs.blank?
36
+ # add top level GeoJSON CRS
37
+ geojson << ', "crs": '
38
+ geojson << {
39
+ :type => 'name',
40
+ :properties => {
41
+ :name => crs
42
+ }
43
+ }.to_json
44
+ end
45
+
46
+ geojson << '}'
47
+
27
48
  geojson
28
49
  end
29
50
 
@@ -1,5 +1,26 @@
1
1
  require 'cancan'
2
2
  require 'devise'
3
+
4
+ # workaround for using safe_yaml < 1.0.4 with Psych instead of syck to avoid side-effects on YAML behaviour of other gems
5
+ # see also https://github.com/dtao/safe_yaml/commit/25e2e156371f8846e7e1918a9e216e89473c57f8
6
+ require 'yaml'
7
+ if !defined?(YAML::ENGINE) && defined?(Psych) && YAML == Psych
8
+ module YAML
9
+ # define temporary dummy YAML::ENGINE.yamler to init SafeYAML::YAML_ENGINE with 'psych'
10
+ # see also https://github.com/dtao/safe_yaml/blob/0.9.7/lib/safe_yaml.rb#L6
11
+ class DummyEngine
12
+ def self.yamler
13
+ "psych"
14
+ end
15
+ end
16
+ ENGINE = DummyEngine
17
+ require 'safe_yaml'
18
+
19
+ # remove YAML::ENGINE
20
+ remove_const :ENGINE
21
+ end
22
+ end
23
+
3
24
  require 'rails_admin'
4
25
 
5
26
  module GbMapfishAppserver
@@ -1,3 +1,3 @@
1
1
  module GbMapfishAppserver
2
- VERSION = "1.1.1"
2
+ VERSION = "2.0.0"
3
3
  end
@@ -1,3 +1,5 @@
1
+ # NOTE: add '*' around geometry column names, so it will be transformed to the client srid in the query, e.g. "Box2d(*geom*)"
2
+
1
3
  SEARCHRULES = {
2
4
  }
3
5
 
@@ -42,6 +42,7 @@ MAPSERV_SERVER = 'http://localhost' #nil for current application server
42
42
  MAPSERV_URL = '/cgi-bin/mapserv'
43
43
  MAPSERV_CGI_URL = '/cgi-bin/mapserv'
44
44
  MAPPATH = '/home/pi/code/rails/gb_mapfish_appserver/test/dummy/mapconfig'
45
+ MAPSERV_REDIRECT = true # Redirect public WMS to MAPSERV_SERVER URL
45
46
 
46
47
  #Internal URL of print servlet (nil: print-standalone)
47
48
  PRINT_URL = nil #'http://localhost:8080/mapfish_print/print/myapp'
@@ -72,6 +72,7 @@ MAPSERV_SERVER = 'http://localhost' #nil for current application server
72
72
  MAPSERV_URL = '/cgi-bin/mapserv.fcgi'
73
73
  MAPSERV_CGI_URL = '/cgi-bin/mapserv'
74
74
  MAPPATH = '/home/pi/code/rails/dummy/mapconfig'
75
+ MAPSERV_REDIRECT = true # Redirect public WMS to MAPSERV_SERVER URL
75
76
 
76
77
  #Internal URL of print servlet (nil: print-standalone)
77
78
  PRINT_URL = nil #'http://localhost:8080/mapfish_print/print/myapp'
@@ -42,6 +42,7 @@ MAPSERV_SERVER = 'http://localhost' #nil for current application server
42
42
  MAPSERV_URL = '/cgi-bin/mapserv.fcgi'
43
43
  MAPSERV_CGI_URL = '/cgi-bin/mapserv'
44
44
  MAPPATH = '/home/pi/code/rails/dummy/mapconfig'
45
+ MAPSERV_REDIRECT = true # Redirect public WMS to MAPSERV_SERVER URL
45
46
 
46
47
  #Internal URL of print servlet (nil: print-standalone)
47
48
  PRINT_URL = nil #'http://localhost:8080/mapfish_print/print/myapp'
@@ -30,6 +30,11 @@ DEFAULT_TOPIC = {
30
30
  SITE_DEFAULT => (Topic.first rescue nil) #Topic.where(:name => 'MainMap').first
31
31
  }
32
32
 
33
+ # set default spatial reference system of database for geo factory
34
+ GeoModel.set_default_rgeo_factory(RGeo::Cartesian.factory(:srid => 21781, :proj4 => '+proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +towgs84=674.4,15.1,405.3,0,0,0,0 +units=m +no_defs'))
35
+ # set default spatial reference system for client requests
36
+ GeoModel.set_default_client_srid(21781)
37
+
33
38
  DEFAULT_SCALE = 310000
34
39
  DEFAULT_X = 692000
35
40
  DEFAULT_Y = 252000
@@ -1,3 +1,5 @@
1
+ # NOTE: add '*' around geometry column names, so it will be transformed to the client srid in the query, e.g. "Box2d(*geom*)"
2
+
1
3
  SEARCHRULES = {
2
4
  }
3
5
 
metadata CHANGED
@@ -1,170 +1,211 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gb_mapfish_appserver
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
5
- prerelease:
4
+ version: 2.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pirmin Kalberer
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2016-02-01 00:00:00.000000000 Z
11
+ date: 2017-09-06 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
- requirement: &4624460 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
19
  version: 3.2.13
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *4624460
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 3.2.13
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: json
27
- requirement: &4623660 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - ">="
31
32
  - !ruby/object:Gem::Version
32
33
  version: '0'
33
34
  type: :runtime
34
35
  prerelease: false
35
- version_requirements: *4623660
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
36
41
  - !ruby/object:Gem::Dependency
37
42
  name: acts_as_tree
38
- requirement: &4622600 !ruby/object:Gem::Requirement
39
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
40
44
  requirements:
41
- - - =
45
+ - - '='
42
46
  - !ruby/object:Gem::Version
43
47
  version: 0.2.0
44
48
  type: :runtime
45
49
  prerelease: false
46
- version_requirements: *4622600
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 0.2.0
47
55
  - !ruby/object:Gem::Dependency
48
56
  name: devise
49
- requirement: &4621780 !ruby/object:Gem::Requirement
50
- none: false
57
+ requirement: !ruby/object:Gem::Requirement
51
58
  requirements:
52
- - - ~>
59
+ - - "~>"
53
60
  - !ruby/object:Gem::Version
54
61
  version: 2.2.0
55
62
  type: :runtime
56
63
  prerelease: false
57
- version_requirements: *4621780
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 2.2.0
58
69
  - !ruby/object:Gem::Dependency
59
70
  name: cancan
60
- requirement: &4621180 !ruby/object:Gem::Requirement
61
- none: false
71
+ requirement: !ruby/object:Gem::Requirement
62
72
  requirements:
63
- - - =
73
+ - - '='
64
74
  - !ruby/object:Gem::Version
65
75
  version: 1.6.8
66
76
  type: :runtime
67
77
  prerelease: false
68
- version_requirements: *4621180
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '='
81
+ - !ruby/object:Gem::Version
82
+ version: 1.6.8
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rails_admin
71
- requirement: &4620360 !ruby/object:Gem::Requirement
72
- none: false
85
+ requirement: !ruby/object:Gem::Requirement
73
86
  requirements:
74
- - - ~>
87
+ - - "~>"
75
88
  - !ruby/object:Gem::Version
76
89
  version: 0.4.9
77
90
  type: :runtime
78
91
  prerelease: false
79
- version_requirements: *4620360
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 0.4.9
80
97
  - !ruby/object:Gem::Dependency
81
98
  name: fastercsv
82
- requirement: &4618960 !ruby/object:Gem::Requirement
83
- none: false
99
+ requirement: !ruby/object:Gem::Requirement
84
100
  requirements:
85
- - - ! '>='
101
+ - - ">="
86
102
  - !ruby/object:Gem::Version
87
103
  version: '0'
88
104
  type: :runtime
89
105
  prerelease: false
90
- version_requirements: *4618960
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
91
111
  - !ruby/object:Gem::Dependency
92
- name: sass
93
- requirement: &4633360 !ruby/object:Gem::Requirement
94
- none: false
112
+ name: bootstrap-sass
113
+ requirement: !ruby/object:Gem::Requirement
95
114
  requirements:
96
- - - ~>
115
+ - - '='
97
116
  - !ruby/object:Gem::Version
98
- version: 3.2.12
117
+ version: 2.2.2.0
99
118
  type: :runtime
100
119
  prerelease: false
101
- version_requirements: *4633360
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '='
123
+ - !ruby/object:Gem::Version
124
+ version: 2.2.2.0
102
125
  - !ruby/object:Gem::Dependency
103
- name: GeoRuby
104
- requirement: &4631940 !ruby/object:Gem::Requirement
105
- none: false
126
+ name: georuby
127
+ requirement: !ruby/object:Gem::Requirement
106
128
  requirements:
107
- - - ! '>='
129
+ - - ">="
108
130
  - !ruby/object:Gem::Version
109
- version: 0.1.4
131
+ version: '0'
110
132
  type: :runtime
111
133
  prerelease: false
112
- version_requirements: *4631940
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
113
139
  - !ruby/object:Gem::Dependency
114
140
  name: rgeo
115
- requirement: &4631200 !ruby/object:Gem::Requirement
116
- none: false
141
+ requirement: !ruby/object:Gem::Requirement
117
142
  requirements:
118
- - - ~>
143
+ - - "~>"
119
144
  - !ruby/object:Gem::Version
120
145
  version: 0.3.20
121
146
  type: :runtime
122
147
  prerelease: false
123
- version_requirements: *4631200
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 0.3.20
124
153
  - !ruby/object:Gem::Dependency
125
154
  name: rgeo-geojson
126
- requirement: &4630040 !ruby/object:Gem::Requirement
127
- none: false
155
+ requirement: !ruby/object:Gem::Requirement
128
156
  requirements:
129
- - - ~>
157
+ - - "~>"
130
158
  - !ruby/object:Gem::Version
131
159
  version: 0.2.3
132
160
  type: :runtime
133
161
  prerelease: false
134
- version_requirements: *4630040
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: 0.2.3
135
167
  - !ruby/object:Gem::Dependency
136
168
  name: hpricot
137
- requirement: &4629180 !ruby/object:Gem::Requirement
138
- none: false
169
+ requirement: !ruby/object:Gem::Requirement
139
170
  requirements:
140
- - - ! '>='
171
+ - - ">="
141
172
  - !ruby/object:Gem::Version
142
173
  version: '0'
143
174
  type: :runtime
144
175
  prerelease: false
145
- version_requirements: *4629180
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
146
181
  - !ruby/object:Gem::Dependency
147
182
  name: pg
148
- requirement: &4627780 !ruby/object:Gem::Requirement
149
- none: false
183
+ requirement: !ruby/object:Gem::Requirement
150
184
  requirements:
151
- - - ~>
185
+ - - ">="
152
186
  - !ruby/object:Gem::Version
153
- version: 0.14.0
187
+ version: 0.18.0
154
188
  type: :runtime
155
189
  prerelease: false
156
- version_requirements: *4627780
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: 0.18.0
157
195
  - !ruby/object:Gem::Dependency
158
196
  name: activerecord-postgis-adapter
159
- requirement: &4626740 !ruby/object:Gem::Requirement
160
- none: false
197
+ requirement: !ruby/object:Gem::Requirement
161
198
  requirements:
162
- - - =
199
+ - - '='
163
200
  - !ruby/object:Gem::Version
164
201
  version: 0.4.1
165
202
  type: :runtime
166
203
  prerelease: false
167
- version_requirements: *4626740
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - '='
207
+ - !ruby/object:Gem::Version
208
+ version: 0.4.1
168
209
  description: Mapfish Appserver is a framework for web mapping applications using OGC
169
210
  standards and the Mapfish protocol.
170
211
  email:
@@ -173,7 +214,7 @@ executables: []
173
214
  extensions: []
174
215
  extra_rdoc_files: []
175
216
  files:
176
- - .gitignore
217
+ - ".gitignore"
177
218
  - Gemfile
178
219
  - LICENSE
179
220
  - README.md
@@ -429,27 +470,26 @@ files:
429
470
  - test/test_helper.rb
430
471
  homepage: http://mapfish-appserver.github.io/
431
472
  licenses: []
473
+ metadata: {}
432
474
  post_install_message:
433
475
  rdoc_options: []
434
476
  require_paths:
435
477
  - lib
436
478
  required_ruby_version: !ruby/object:Gem::Requirement
437
- none: false
438
479
  requirements:
439
- - - ! '>='
480
+ - - ">="
440
481
  - !ruby/object:Gem::Version
441
- version: '0'
482
+ version: '2.3'
442
483
  required_rubygems_version: !ruby/object:Gem::Requirement
443
- none: false
444
484
  requirements:
445
- - - ! '>='
485
+ - - ">="
446
486
  - !ruby/object:Gem::Version
447
487
  version: '0'
448
488
  requirements: []
449
489
  rubyforge_project:
450
- rubygems_version: 1.8.11
490
+ rubygems_version: 2.5.1
451
491
  signing_key:
452
- specification_version: 3
492
+ specification_version: 4
453
493
  summary: Mapfish application server.
454
494
  test_files:
455
495
  - test/dummy/README.rdoc