tdiary 5.5.1 → 5.6.1
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.
- checksums.yaml +4 -4
- data/ChangeLog +2 -0
- data/Gemfile +2 -1
- data/Gemfile.lock +39 -40
- data/doc/HOWTO-make-theme.md +3 -3
- data/doc/UPGRADE.md +1 -1
- data/js/draft.js +152 -52
- data/js/image.js +127 -28
- data/lib/tdiary/admin.rb +11 -13
- data/lib/tdiary/application.rb +2 -7
- data/lib/tdiary/author_only_base.rb +78 -9
- data/lib/tdiary/base.rb +2 -2
- data/lib/tdiary/cgi_adapter.rb +7 -5
- data/lib/tdiary/cgi_compat.rb +27 -97
- data/lib/tdiary/configuration.rb +4 -0
- data/lib/tdiary/core_ext.rb +146 -1
- data/lib/tdiary/dispatcher/index_main.rb +5 -23
- data/lib/tdiary/dispatcher/update_main.rb +2 -17
- data/lib/tdiary/dispatcher.rb +29 -15
- data/lib/tdiary/filter/default.rb +2 -2
- data/lib/tdiary/filter/spam.rb +2 -2
- data/lib/tdiary/filter.rb +1 -1
- data/lib/tdiary/plugin/00default.rb +18 -3
- data/lib/tdiary/plugin/en/00default.rb +15 -0
- data/lib/tdiary/plugin/ja/00default.rb +15 -0
- data/lib/tdiary/plugin.rb +1 -1
- data/lib/tdiary/rack/error_handler.rb +36 -0
- data/lib/tdiary/rack.rb +1 -0
- data/lib/tdiary/request.rb +3 -2
- data/lib/tdiary/server.rb +25 -3
- data/lib/tdiary/version.rb +1 -1
- data/lib/tdiary/view.rb +33 -28
- data/lib/tdiary/view_helper.rb +10 -2
- data/lib/tdiary.rb +6 -1
- data/misc/plugin/amazon.rb +37 -11
- data/misc/plugin/amazon_rakuten.rb +75 -0
- data/misc/plugin/draft.rb +75 -0
- data/misc/plugin/en/image.rb +5 -0
- data/misc/plugin/en/makerss.rb +4 -0
- data/misc/plugin/image.rb +15 -4
- data/misc/plugin/ja/makerss.rb +3 -0
- data/misc/plugin/makerss.rb +6 -5
- data/tdiary.conf.sample +8 -0
- data/tdiary.conf.sample-en +8 -0
- data/theme/default/default.css +33 -8
- data/vendor/bundle/ruby/3.4.0/cache/net-imap-0.6.6.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/cache/net-protocol-0.3.0.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/cache/rack-3.2.7.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/cgi-0.5.2/cgi/escape.so +0 -0
- data/vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/cgi-0.5.2/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/date-3.5.1/date_core.so +0 -0
- data/vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/date-3.5.1/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.4.0/extensions/x86_64-linux/3.4.0/date-3.5.1/mkmf.log +4 -4
- data/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape/Makefile +3 -3
- data/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/lib/cgi/escape.so +0 -0
- data/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date/Makefile +3 -3
- data/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/lib/date_core.so +0 -0
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/Gemfile +3 -4
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/README.md +1 -1
- data/vendor/bundle/ruby/3.4.0/gems/net-imap-0.6.6/Rakefile +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/command_data.rb +62 -92
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/config/attr_accessors.rb +8 -9
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/config/attr_inheritance.rb +64 -1
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/config/attr_version_defaults.rb +1 -4
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/config.rb +209 -35
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/connection_state.rb +1 -1
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/data_encoding.rb +127 -27
- data/vendor/bundle/ruby/3.4.0/gems/net-imap-0.6.6/lib/net/imap/errors.rb +372 -0
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/esearch_result.rb +6 -0
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/response_data.rb +90 -11
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/response_parser/parser_utils.rb +14 -23
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/response_parser.rb +41 -26
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/response_reader.rb +16 -21
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/scram_authenticator.rb +3 -3
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/search_result.rb +11 -1
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sequence_set.rb +620 -312
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/uidplus_data.rb +2 -63
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap.rb +279 -162
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/net-imap.gemspec +1 -1
- data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/rakelib/rdoc.rake +1 -18
- data/vendor/bundle/ruby/3.4.0/gems/{net-protocol-0.2.2/LICENSE.txt → net-protocol-0.3.0/BSDL} +3 -3
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.3.0/COPYING +56 -0
- data/vendor/bundle/ruby/3.4.0/gems/{net-protocol-0.2.2 → net-protocol-0.3.0}/lib/net/protocol.rb +58 -4
- data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/CHANGELOG.md +54 -1
- data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/utils.rb +3 -3
- data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/version.rb +1 -1
- data/vendor/bundle/ruby/3.4.0/specifications/{net-imap-0.5.15.gemspec → net-imap-0.6.6.gemspec} +4 -4
- data/vendor/bundle/ruby/3.4.0/specifications/{net-protocol-0.2.2.gemspec → net-protocol-0.3.0.gemspec} +5 -5
- data/vendor/bundle/ruby/3.4.0/specifications/{rack-3.2.6.gemspec → rack-3.2.7.gemspec} +3 -3
- data/views/tdiary.rconf +2 -0
- metadata +128 -133
- data/misc/plugin/amp.rb +0 -118
- data/vendor/bundle/ruby/3.4.0/cache/net-imap-0.5.15.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/cache/net-protocol-0.2.2.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/cache/rack-3.2.6.gem +0 -0
- data/vendor/bundle/ruby/3.4.0/gems/net-imap-0.5.15/Rakefile +0 -13
- data/vendor/bundle/ruby/3.4.0/gems/net-imap-0.5.15/lib/net/imap/data_lite.rb +0 -226
- data/vendor/bundle/ruby/3.4.0/gems/net-imap-0.5.15/lib/net/imap/errors.rb +0 -118
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.2.2/Gemfile +0 -7
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.2.2/Rakefile +0 -10
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.2.2/bin/console +0 -14
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.2.2/bin/setup +0 -8
- data/vendor/bundle/ruby/3.4.0/gems/net-protocol-0.2.2/net-protocol.gemspec +0 -33
- data/views/amp.rhtml +0 -34
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/BSDL +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/COPYING +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/LICENSE.txt +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/docs/styles.css +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/authenticators.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/config/attr_type_coercion.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/deprecated_client_options.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/fetch_data.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/flags.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/anonymous_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/authentication_exchange.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/authenticators.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/client_adapter.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/cram_md5_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/digest_md5_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/external_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/gs2_header.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/login_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/oauthbearer_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/plain_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/protocol_adapters.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/scram_algorithm.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/stringprep.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl/xoauth2_authenticator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/sasl_adapter.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep/nameprep.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep/saslprep.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep/saslprep_tables.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep/tables.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep/trace.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/stringprep.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/vanished_data.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/rakelib/benchmarks.rake +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/rakelib/rfcs.rake +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/rakelib/saslprep.rake +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/rakelib/string_prep_tables_generator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/sample/net-imap.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{net-protocol-0.2.2 → net-protocol-0.3.0}/README.md +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/CONTRIBUTING.md +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/MIT-LICENSE +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/README.md +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/SPEC.rdoc +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/auth/abstract/handler.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/auth/abstract/request.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/auth/basic.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/bad_request.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/body_proxy.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/builder.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/cascade.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/common_logger.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/conditional_get.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/config.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/constants.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/content_length.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/content_type.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/deflater.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/directory.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/etag.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/events.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/files.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/head.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/headers.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/lint.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/lock.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/media_type.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/method_override.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/mime.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/mock.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/mock_request.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/mock_response.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/multipart/generator.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/multipart/parser.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/multipart/uploaded_file.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/multipart.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/null_logger.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/query_parser.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/recursive.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/reloader.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/request.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/response.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/rewindable_input.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/runtime.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/sendfile.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/show_exceptions.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/show_status.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/static.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/tempfile_reaper.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack/urlmap.rb +0 -0
- /data/vendor/bundle/ruby/3.4.0/gems/{rack-3.2.6 → rack-3.2.7}/lib/rack.rb +0 -0
data/theme/default/default.css
CHANGED
|
@@ -15,6 +15,11 @@ Copyright 2011 (C) TADA Tadashi <t@tdtds.jp>
|
|
|
15
15
|
padding: 0px;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
html {
|
|
19
|
+
-webkit-text-size-adjust: 100%;
|
|
20
|
+
text-size-adjust: 100%;
|
|
21
|
+
}
|
|
22
|
+
|
|
18
23
|
body {
|
|
19
24
|
text-align: center;
|
|
20
25
|
width: 100%;
|
|
@@ -107,6 +112,10 @@ div.refererlist {
|
|
|
107
112
|
margin: 16px;
|
|
108
113
|
}
|
|
109
114
|
|
|
115
|
+
div.body {
|
|
116
|
+
overflow-wrap: anywhere;
|
|
117
|
+
}
|
|
118
|
+
|
|
110
119
|
div.section {
|
|
111
120
|
margin-top: 30px;
|
|
112
121
|
}
|
|
@@ -147,6 +156,7 @@ div.section pre {
|
|
|
147
156
|
padding: 8px;
|
|
148
157
|
background-color: #eee;
|
|
149
158
|
border-radius: 8px;
|
|
159
|
+
overflow-x: auto;
|
|
150
160
|
}
|
|
151
161
|
|
|
152
162
|
div.section blockquote {
|
|
@@ -210,6 +220,8 @@ div.section img {
|
|
|
210
220
|
border-style: solid;
|
|
211
221
|
border-color: #888;
|
|
212
222
|
border-width: 1px;
|
|
223
|
+
max-width: 100%;
|
|
224
|
+
height: auto;
|
|
213
225
|
}
|
|
214
226
|
|
|
215
227
|
div.section img.photo {
|
|
@@ -554,7 +566,7 @@ div.search-navi {
|
|
|
554
566
|
div.category {
|
|
555
567
|
text-align: left;
|
|
556
568
|
margin: 0px auto;
|
|
557
|
-
width: 900px;
|
|
569
|
+
max-width: 900px;
|
|
558
570
|
}
|
|
559
571
|
|
|
560
572
|
div.category ul {
|
|
@@ -670,22 +682,37 @@ div.sidebar div.calendar {
|
|
|
670
682
|
}
|
|
671
683
|
|
|
672
684
|
|
|
685
|
+
/*
|
|
686
|
+
stack the sidebar under the main column below the width of div.whole-content
|
|
687
|
+
*/
|
|
688
|
+
@media screen and (max-width: 899px) {
|
|
689
|
+
div.main {
|
|
690
|
+
float: none;
|
|
691
|
+
max-width: none;
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
|
|
673
695
|
/*
|
|
674
696
|
design for smart phones
|
|
675
697
|
*/
|
|
676
|
-
@media screen and (max-
|
|
698
|
+
@media screen and (max-width: 480px) {
|
|
677
699
|
body {
|
|
678
700
|
box-sizing: border-box;
|
|
679
701
|
}
|
|
680
702
|
|
|
681
703
|
div.adminmenu {
|
|
682
|
-
font-size:
|
|
704
|
+
font-size: small;
|
|
683
705
|
margin: 0px;
|
|
684
706
|
padding-left: 0px;
|
|
685
707
|
padding-right: 0px;
|
|
686
708
|
width: 100%;
|
|
687
709
|
}
|
|
688
710
|
|
|
711
|
+
div.adminmenu a {
|
|
712
|
+
display: inline-block;
|
|
713
|
+
padding: 0.5em 0.75em;
|
|
714
|
+
}
|
|
715
|
+
|
|
689
716
|
h1 {
|
|
690
717
|
padding-top: 80px;
|
|
691
718
|
height: 50px;
|
|
@@ -742,12 +769,10 @@ div.sidebar div.calendar {
|
|
|
742
769
|
width: 100%;
|
|
743
770
|
}
|
|
744
771
|
|
|
772
|
+
input,
|
|
773
|
+
select,
|
|
745
774
|
textarea {
|
|
746
|
-
font-size:
|
|
747
|
-
}
|
|
748
|
-
|
|
749
|
-
div.sidebar {
|
|
750
|
-
display: none;
|
|
775
|
+
font-size: 16px;
|
|
751
776
|
}
|
|
752
777
|
}
|
|
753
778
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape
|
|
2
|
-
/opt/hostedtoolcache/Ruby/3.4.
|
|
2
|
+
/opt/hostedtoolcache/Ruby/3.4.11/x64/bin/ruby extconf.rb
|
|
3
3
|
creating Makefile
|
|
4
4
|
|
|
5
5
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape
|
|
6
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
6
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urk1av sitelibdir\=./.gem.20261009-2497-urk1av clean
|
|
7
7
|
|
|
8
8
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape
|
|
9
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
9
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urk1av sitelibdir\=./.gem.20261009-2497-urk1av
|
|
10
10
|
compiling escape.c
|
|
11
11
|
linking shared-object cgi/escape.so
|
|
12
12
|
|
|
13
13
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape
|
|
14
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
15
|
-
/usr/bin/install -c -m 0755 escape.so ./.gem.
|
|
14
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urk1av sitelibdir\=./.gem.20261009-2497-urk1av install
|
|
15
|
+
/usr/bin/install -c -m 0755 escape.so ./.gem.20261009-2497-urk1av/cgi
|
|
16
16
|
|
|
17
17
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/cgi-0.5.2/ext/cgi/escape
|
|
18
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
18
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urk1av sitelibdir\=./.gem.20261009-2497-urk1av clean
|
|
Binary file
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date
|
|
2
|
-
/opt/hostedtoolcache/Ruby/3.4.
|
|
2
|
+
/opt/hostedtoolcache/Ruby/3.4.11/x64/bin/ruby extconf.rb
|
|
3
3
|
checking for rb_category_warn()... yes
|
|
4
4
|
checking for timezone in time.h with -Werror... yes
|
|
5
5
|
checking for altzone in time.h with -Werror... no
|
|
6
6
|
creating Makefile
|
|
7
7
|
|
|
8
8
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date
|
|
9
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
9
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urkdo3 sitelibdir\=./.gem.20261009-2497-urkdo3 clean
|
|
10
10
|
|
|
11
11
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date
|
|
12
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
12
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urkdo3 sitelibdir\=./.gem.20261009-2497-urkdo3
|
|
13
13
|
compiling date_core.c
|
|
14
14
|
compiling date_parse.c
|
|
15
15
|
compiling date_strftime.c
|
|
@@ -17,8 +17,8 @@ compiling date_strptime.c
|
|
|
17
17
|
linking shared-object date_core.so
|
|
18
18
|
|
|
19
19
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date
|
|
20
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
21
|
-
/usr/bin/install -c -m 0755 date_core.so ./.gem.
|
|
20
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urkdo3 sitelibdir\=./.gem.20261009-2497-urkdo3 install
|
|
21
|
+
/usr/bin/install -c -m 0755 date_core.so ./.gem.20261009-2497-urkdo3
|
|
22
22
|
|
|
23
23
|
current directory: /home/runner/work/tdiary-core/tdiary-core/vendor/bundle/ruby/3.4.0/gems/date-3.5.1/ext/date
|
|
24
|
-
make DESTDIR\= sitearchdir\=./.gem.
|
|
24
|
+
make DESTDIR\= sitearchdir\=./.gem.20261009-2497-urkdo3 sitelibdir\=./.gem.20261009-2497-urkdo3 clean
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
have_func: checking for rb_category_warn()... -------------------- yes
|
|
2
2
|
|
|
3
|
-
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.
|
|
3
|
+
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.11/x64/lib ASAN_OPTIONS=detect_leaks=0 "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0 -I. -DENABLE_PATH_CHECK=0 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wmisleading-indentation -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -lruby -lm -lpthread -lc"
|
|
4
4
|
checked program was:
|
|
5
5
|
/* begin */
|
|
6
6
|
1: #include "ruby.h"
|
|
@@ -11,7 +11,7 @@ checked program was:
|
|
|
11
11
|
6: }
|
|
12
12
|
/* end */
|
|
13
13
|
|
|
14
|
-
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.
|
|
14
|
+
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.11/x64/lib ASAN_OPTIONS=detect_leaks=0 "gcc -o conftest -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0 -I. -DENABLE_PATH_CHECK=0 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wmisleading-indentation -Wundef -fPIC conftest.c -L. -L/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-rpath,/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -L/opt/hostedtoolcache/Ruby/3.4.11/x64/lib -lruby -lm -lpthread -lc"
|
|
15
15
|
checked program was:
|
|
16
16
|
/* begin */
|
|
17
17
|
1: #include "ruby.h"
|
|
@@ -34,7 +34,7 @@ checked program was:
|
|
|
34
34
|
|
|
35
35
|
have_var: checking for timezone in time.h with -Werror... -------------------- yes
|
|
36
36
|
|
|
37
|
-
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.
|
|
37
|
+
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.11/x64/lib ASAN_OPTIONS=detect_leaks=0 "gcc -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0 -I. -DENABLE_PATH_CHECK=0 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wmisleading-indentation -Wundef -fPIC -Werror -c conftest.c"
|
|
38
38
|
checked program was:
|
|
39
39
|
/* begin */
|
|
40
40
|
1: #include "ruby.h"
|
|
@@ -59,7 +59,7 @@ checked program was:
|
|
|
59
59
|
|
|
60
60
|
have_var: checking for altzone in time.h with -Werror... -------------------- no
|
|
61
61
|
|
|
62
|
-
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.
|
|
62
|
+
LD_LIBRARY_PATH=.:/opt/hostedtoolcache/Ruby/3.4.11/x64/lib ASAN_OPTIONS=detect_leaks=0 "gcc -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/ruby/backward -I/opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0 -I. -DENABLE_PATH_CHECK=0 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wmisleading-indentation -Wundef -fPIC -Werror -c conftest.c"
|
|
63
63
|
conftest.c: In function ‘t’:
|
|
64
64
|
conftest.c:16:55: error: ‘altzone’ undeclared (first use in this function)
|
|
65
65
|
16 | int t(void) { const volatile void *volatile p; p = &(&altzone)[0]; return !p; }
|
|
@@ -13,12 +13,12 @@ NULLCMD = :
|
|
|
13
13
|
#### Start of system configuration section. ####
|
|
14
14
|
|
|
15
15
|
srcdir = .
|
|
16
|
-
topdir = /opt/hostedtoolcache/Ruby/3.4.
|
|
16
|
+
topdir = /opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0
|
|
17
17
|
hdrdir = $(topdir)
|
|
18
|
-
arch_hdrdir = /opt/hostedtoolcache/Ruby/3.4.
|
|
18
|
+
arch_hdrdir = /opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux
|
|
19
19
|
PATH_SEPARATOR = :
|
|
20
20
|
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
|
|
21
|
-
prefix = $(DESTDIR)/opt/hostedtoolcache/Ruby/3.4.
|
|
21
|
+
prefix = $(DESTDIR)/opt/hostedtoolcache/Ruby/3.4.11/x64
|
|
22
22
|
rubysitearchprefix = $(rubylibprefix)/$(sitearch)
|
|
23
23
|
rubyarchprefix = $(rubylibprefix)/$(arch)
|
|
24
24
|
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
|
|
Binary file
|
|
@@ -13,12 +13,12 @@ NULLCMD = :
|
|
|
13
13
|
#### Start of system configuration section. ####
|
|
14
14
|
|
|
15
15
|
srcdir = .
|
|
16
|
-
topdir = /opt/hostedtoolcache/Ruby/3.4.
|
|
16
|
+
topdir = /opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0
|
|
17
17
|
hdrdir = $(topdir)
|
|
18
|
-
arch_hdrdir = /opt/hostedtoolcache/Ruby/3.4.
|
|
18
|
+
arch_hdrdir = /opt/hostedtoolcache/Ruby/3.4.11/x64/include/ruby-3.4.0/x86_64-linux
|
|
19
19
|
PATH_SEPARATOR = :
|
|
20
20
|
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
|
|
21
|
-
prefix = $(DESTDIR)/opt/hostedtoolcache/Ruby/3.4.
|
|
21
|
+
prefix = $(DESTDIR)/opt/hostedtoolcache/Ruby/3.4.11/x64
|
|
22
22
|
rubysitearchprefix = $(rubylibprefix)/$(sitearch)
|
|
23
23
|
rubyarchprefix = $(rubylibprefix)/$(arch)
|
|
24
24
|
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
|
|
Binary file
|
|
@@ -7,10 +7,11 @@ gemspec
|
|
|
7
7
|
# gem "digest" # not included as a workaround for #576
|
|
8
8
|
gem "strscan"
|
|
9
9
|
gem "base64"
|
|
10
|
+
gem "psych", ">= 5.3.0" # 5.2.5 for Data serialization, 5.3.0 for TruffleRuby
|
|
10
11
|
|
|
11
12
|
gem "irb"
|
|
12
13
|
gem "rake"
|
|
13
|
-
gem "rdoc"
|
|
14
|
+
gem "rdoc", ">= 7.2.0"
|
|
14
15
|
gem "test-unit"
|
|
15
16
|
gem "test-unit-ruby-core", git: "https://github.com/ruby/test-unit-ruby-core"
|
|
16
17
|
|
|
@@ -19,7 +20,5 @@ gem "benchmark-driver", require: false
|
|
|
19
20
|
gem "vernier", require: false, platform: :mri
|
|
20
21
|
|
|
21
22
|
group :test do
|
|
22
|
-
gem "simplecov",
|
|
23
|
-
gem "simplecov-html", require: false, platforms: %i[mri windows]
|
|
24
|
-
gem "simplecov-json", require: false, platforms: %i[mri windows]
|
|
23
|
+
gem "simplecov", ">= 1.0.0", require: false, platforms: %i[mri windows]
|
|
25
24
|
end
|
|
@@ -61,9 +61,9 @@ imap.search(["BEFORE", "30-Apr-2003", "SINCE", "1-Apr-2003"]).each do |message_i
|
|
|
61
61
|
else
|
|
62
62
|
imap.copy(message_id, "Mail/sent-apr03")
|
|
63
63
|
imap.store(message_id, "+FLAGS", [:Deleted])
|
|
64
|
+
imap.expunge
|
|
64
65
|
end
|
|
65
66
|
end
|
|
66
|
-
imap.expunge
|
|
67
67
|
```
|
|
68
68
|
|
|
69
69
|
## Development
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "bundler/gem_tasks"
|
|
4
|
+
require "rake/testtask"
|
|
5
|
+
require "rake/clean"
|
|
6
|
+
|
|
7
|
+
Rake::TestTask.new(:test) do |t|
|
|
8
|
+
t.libs << "test/lib"
|
|
9
|
+
t.ruby_opts << "-rhelper"
|
|
10
|
+
t.test_files = FileList["test/**/test_*.rb"]
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
task :default => :test
|
|
14
|
+
|
|
15
|
+
desc "Output coverage data report, and error when threshholds aren't met"
|
|
16
|
+
task "coverage:report" do
|
|
17
|
+
require "simplecov"
|
|
18
|
+
SimpleCov.collate "coverage/.resultset.json" do
|
|
19
|
+
coverage(:line) do
|
|
20
|
+
minimum 90
|
|
21
|
+
minimum_per_file 40
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
data/vendor/bundle/ruby/3.4.0/gems/{net-imap-0.5.15 → net-imap-0.6.6}/lib/net/imap/command_data.rb
RENAMED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
require "date"
|
|
4
4
|
|
|
5
5
|
require_relative "errors"
|
|
6
|
-
require_relative "data_lite"
|
|
7
6
|
|
|
8
7
|
# :enddoc:
|
|
9
8
|
|
|
@@ -16,6 +15,9 @@ module Net
|
|
|
16
15
|
case data
|
|
17
16
|
when nil
|
|
18
17
|
when String
|
|
18
|
+
if data.include?("\0")
|
|
19
|
+
raise DataFormatError, "String argument contains NULL byte"
|
|
20
|
+
end
|
|
19
21
|
when Integer
|
|
20
22
|
# Covers modseq-valzer, which is the largest valid IMAP integer
|
|
21
23
|
if data.negative?
|
|
@@ -56,33 +58,42 @@ module Net
|
|
|
56
58
|
end
|
|
57
59
|
end
|
|
58
60
|
|
|
61
|
+
UNQUOTABLE_CHARS = /[\0\r\n]/
|
|
62
|
+
ASTRING_SPECIALS = /[(){ \x00-\x1f\x7f%*"\\]/
|
|
63
|
+
private_constant :UNQUOTABLE_CHARS, :ASTRING_SPECIALS
|
|
64
|
+
|
|
65
|
+
# Sends generic strings formatted as +astring+:
|
|
66
|
+
# * as an atom (note: this is based on +ASTRING-CHAR+, not +ATOM-CHAR+)
|
|
67
|
+
# * as a quoted string
|
|
68
|
+
# * as a literal (may send non-synchronizing)
|
|
69
|
+
#
|
|
70
|
+
# NOTE: This does not validate that +str+ contains no +NULL+ bytes.
|
|
59
71
|
def send_string_data(str, tag = nil)
|
|
60
72
|
if str.empty?
|
|
73
|
+
# same as send_quoted_string(str), but incompatible encoding is allowed
|
|
61
74
|
put_string('""')
|
|
62
|
-
elsif str.match?(
|
|
63
|
-
#
|
|
64
|
-
|
|
65
|
-
elsif !str.
|
|
66
|
-
if @utf8_strings
|
|
67
|
-
# quoted string
|
|
68
|
-
send_quoted_string(str)
|
|
69
|
-
else
|
|
70
|
-
# literal, because of non-ASCII bytes
|
|
71
|
-
send_literal(str, tag)
|
|
72
|
-
end
|
|
73
|
-
elsif str.match?(/[(){ \x00-\x1f\x7f%*"\\]/n)
|
|
74
|
-
# quoted string
|
|
75
|
+
elsif str.ascii_only? && !str.match?(ASTRING_SPECIALS)
|
|
76
|
+
# valid +astring+ atom: non-empty, ASCII only, no ASTRING_SPECIALS
|
|
77
|
+
put_string(str)
|
|
78
|
+
elsif text_encodable?(str) && !str.match?(UNQUOTABLE_CHARS)
|
|
75
79
|
send_quoted_string(str)
|
|
76
80
|
else
|
|
77
|
-
|
|
81
|
+
send_literal(str, tag)
|
|
78
82
|
end
|
|
79
83
|
end
|
|
80
84
|
|
|
81
|
-
|
|
82
|
-
|
|
85
|
+
# Encodable as +text+ (which is a superset of +quoted+):
|
|
86
|
+
# * ASCII only (for any ASCII compatible encoding)
|
|
87
|
+
# * or valid UTF-8 (when the connection supports it)
|
|
88
|
+
def text_encodable?(str)
|
|
89
|
+
str.ascii_only? || (utf8_enabled? &&
|
|
90
|
+
str.encoding == Encoding::UTF_8 &&
|
|
91
|
+
str.valid_encoding?)
|
|
83
92
|
end
|
|
84
93
|
|
|
85
|
-
def
|
|
94
|
+
def send_quoted_string(str) = QuotedString.new(data: str).send_data(self)
|
|
95
|
+
|
|
96
|
+
def send_binary_literal(*, **) = send_literal(*, **, binary: true)
|
|
86
97
|
|
|
87
98
|
# `non_sync` is an optional tri-state flag:
|
|
88
99
|
# * `true` -> Force non-synchronizing `LITERAL+`/`LITERAL-` behavior.
|
|
@@ -90,7 +101,6 @@ module Net
|
|
|
90
101
|
# non-synchronizing literal, or literal is too large for LITERAL-.
|
|
91
102
|
# * `false` -> Force normal synchronizing literal behavior.
|
|
92
103
|
# * `nil` -> (default) Currently behaves like `false` (will be dynamic).
|
|
93
|
-
# TODO: Dynamic, based on capabilities and bytesize.
|
|
94
104
|
def send_literal(str, tag = nil, binary: false, non_sync: nil)
|
|
95
105
|
bytesize = str.bytesize
|
|
96
106
|
synchronize do
|
|
@@ -100,6 +110,7 @@ module Net
|
|
|
100
110
|
raise DataFormatError, "Connection closed: " \
|
|
101
111
|
"Cannot send non-synchronizing literal without known server support"
|
|
102
112
|
end
|
|
113
|
+
non_sync = non_sync_literal?(bytesize) if non_sync.nil?
|
|
103
114
|
prefix = "~" if binary
|
|
104
115
|
plus = "+" if non_sync
|
|
105
116
|
put_string("#{prefix}{#{bytesize}#{plus}}\r\n")
|
|
@@ -111,8 +122,7 @@ module Net
|
|
|
111
122
|
@continuation_request_exception = nil
|
|
112
123
|
begin
|
|
113
124
|
@continuation_request_arrival.wait
|
|
114
|
-
|
|
115
|
-
raise e if e
|
|
125
|
+
reraise @continuation_request_exception || @exception
|
|
116
126
|
put_string(str)
|
|
117
127
|
ensure
|
|
118
128
|
@continued_command_tag = nil
|
|
@@ -121,6 +131,11 @@ module Net
|
|
|
121
131
|
end
|
|
122
132
|
end
|
|
123
133
|
|
|
134
|
+
def non_sync_literal?(bytesize)
|
|
135
|
+
bytesize <= config.max_non_synchronizing_literal \
|
|
136
|
+
&& non_sync_literal_allowed?(bytesize)
|
|
137
|
+
end
|
|
138
|
+
|
|
124
139
|
def non_sync_literal_allowed?(bytesize)
|
|
125
140
|
return unless capabilities_cached?
|
|
126
141
|
return "+" if capable?("LITERAL+")
|
|
@@ -152,6 +167,9 @@ module Net
|
|
|
152
167
|
def send_date_data(date) put_string Net::IMAP.encode_date(date) end
|
|
153
168
|
def send_time_data(time) put_string Net::IMAP.encode_time(time) end
|
|
154
169
|
|
|
170
|
+
# NOTE: Currently for internal use only. The API is expected to change.
|
|
171
|
+
Command = Data.define(:tag, :name) # :nodoc:
|
|
172
|
+
|
|
155
173
|
CommandData = Data.define(:data) do # :nodoc:
|
|
156
174
|
def self.validate(...)
|
|
157
175
|
data = new(...)
|
|
@@ -249,10 +267,10 @@ module Net
|
|
|
249
267
|
parts = []
|
|
250
268
|
while data.match(/(~)?\{(0|[1-9]\d*)(\+)?\}\r\n/n)
|
|
251
269
|
text, binary, bytesize, non_sync, data = $`, !!$1, $2, !!$3, $'
|
|
252
|
-
bytesize =
|
|
270
|
+
bytesize = NumValidator.coerce_number64 bytesize
|
|
253
271
|
parts << RawText[text] unless text.empty?
|
|
254
272
|
parts << extract_literal(data, binary:, bytesize:, non_sync:)
|
|
255
|
-
data
|
|
273
|
+
data.bytesplice(0, bytesize, "")
|
|
256
274
|
end
|
|
257
275
|
parts << RawText[data] unless data.empty?
|
|
258
276
|
parts
|
|
@@ -269,6 +287,17 @@ module Net
|
|
|
269
287
|
private_class_method :extract_literal
|
|
270
288
|
end
|
|
271
289
|
|
|
290
|
+
# Please note that +ATOM-CHAR+ and +atom+ are not the same as +ASTRING-char+
|
|
291
|
+
# and the atom form of +astring+. +astring+ allows <tt>]</tt>, but +atom+
|
|
292
|
+
# does not.
|
|
293
|
+
#
|
|
294
|
+
# Generic string arguments in Net::IMAP use +astring+, so they will send as
|
|
295
|
+
# atoms even if they contain <tt>]</tt>.
|
|
296
|
+
#
|
|
297
|
+
# This class is used by:
|
|
298
|
+
# * to validate generic symbol arguments, as the superclass of Flag
|
|
299
|
+
# * to validate #enable +capabilities+
|
|
300
|
+
# * to validate #store (and #uid_store) +attr+
|
|
272
301
|
class Atom < CommandData # :nodoc:
|
|
273
302
|
def initialize(**)
|
|
274
303
|
super
|
|
@@ -318,7 +347,7 @@ module Net
|
|
|
318
347
|
validate
|
|
319
348
|
end
|
|
320
349
|
|
|
321
|
-
def bytesize
|
|
350
|
+
def bytesize = data.bytesize
|
|
322
351
|
|
|
323
352
|
def validate
|
|
324
353
|
if data.include?("\0")
|
|
@@ -333,7 +362,7 @@ module Net
|
|
|
333
362
|
end
|
|
334
363
|
|
|
335
364
|
class Literal8 < Literal # :nodoc:
|
|
336
|
-
def validate
|
|
365
|
+
def validate = nil # all bytes are okay
|
|
337
366
|
|
|
338
367
|
def send_data(imap, tag)
|
|
339
368
|
imap.__send__(:send_binary_literal, data, tag, non_sync:)
|
|
@@ -372,73 +401,6 @@ module Net
|
|
|
372
401
|
end
|
|
373
402
|
end
|
|
374
403
|
|
|
375
|
-
# *DEPRECATED*. Replaced by SequenceSet.
|
|
376
|
-
class MessageSet < CommandData # :nodoc:
|
|
377
|
-
def send_data(imap, tag)
|
|
378
|
-
imap.__send__(:put_string, format_internal(data))
|
|
379
|
-
end
|
|
380
|
-
|
|
381
|
-
def validate
|
|
382
|
-
validate_internal(data)
|
|
383
|
-
end
|
|
384
|
-
|
|
385
|
-
private
|
|
386
|
-
|
|
387
|
-
def initialize(data:)
|
|
388
|
-
super
|
|
389
|
-
warn("DEPRECATED: #{MessageSet} should be replaced with #{SequenceSet}.",
|
|
390
|
-
uplevel: 1, category: :deprecated)
|
|
391
|
-
begin
|
|
392
|
-
# to ensure the input works with SequenceSet, too
|
|
393
|
-
SequenceSet.new(data)
|
|
394
|
-
rescue
|
|
395
|
-
warn "MessageSet input is incompatible with SequenceSet: [%s] %s" % [
|
|
396
|
-
$!.class, $!.message
|
|
397
|
-
]
|
|
398
|
-
end
|
|
399
|
-
end
|
|
400
|
-
|
|
401
|
-
def format_internal(data)
|
|
402
|
-
case data
|
|
403
|
-
when "*"
|
|
404
|
-
return data
|
|
405
|
-
when Integer
|
|
406
|
-
if data == -1
|
|
407
|
-
return "*"
|
|
408
|
-
else
|
|
409
|
-
return data.to_s
|
|
410
|
-
end
|
|
411
|
-
when Range
|
|
412
|
-
return format_internal(data.first) +
|
|
413
|
-
":" + format_internal(data.last)
|
|
414
|
-
when Array
|
|
415
|
-
return data.collect {|i| format_internal(i)}.join(",")
|
|
416
|
-
when ThreadMember
|
|
417
|
-
return data.seqno.to_s +
|
|
418
|
-
":" + data.children.collect {|i| format_internal(i).join(",")}
|
|
419
|
-
end
|
|
420
|
-
end
|
|
421
|
-
|
|
422
|
-
def validate_internal(data)
|
|
423
|
-
case data
|
|
424
|
-
when "*"
|
|
425
|
-
when Integer
|
|
426
|
-
NumValidator.ensure_nz_number(data)
|
|
427
|
-
when Range
|
|
428
|
-
when Array
|
|
429
|
-
data.each do |i|
|
|
430
|
-
validate_internal(i)
|
|
431
|
-
end
|
|
432
|
-
when ThreadMember
|
|
433
|
-
data.children.each do |i|
|
|
434
|
-
validate_internal(i)
|
|
435
|
-
end
|
|
436
|
-
else
|
|
437
|
-
raise DataFormatError, data.inspect
|
|
438
|
-
end
|
|
439
|
-
end
|
|
440
|
-
end
|
|
441
|
-
|
|
442
404
|
class ClientID < CommandData # :nodoc:
|
|
443
405
|
|
|
444
406
|
def send_data(imap, tag)
|
|
@@ -476,6 +438,14 @@ module Net
|
|
|
476
438
|
|
|
477
439
|
module_function
|
|
478
440
|
|
|
441
|
+
def literal_or_literal8(input, name: "argument")
|
|
442
|
+
return input if input in Literal | Literal8
|
|
443
|
+
data = String.try_convert(input) \
|
|
444
|
+
or raise TypeError, "expected #{name} to be String, got #{input.class}"
|
|
445
|
+
type = data.include?("\0") ? Literal8 : Literal
|
|
446
|
+
type.new(data:)
|
|
447
|
+
end
|
|
448
|
+
|
|
479
449
|
# Allows symbols in addition to strings
|
|
480
450
|
def valid_string?(str)
|
|
481
451
|
str.is_a?(Symbol) || str.respond_to?(:to_str)
|
|
@@ -27,24 +27,23 @@ module Net
|
|
|
27
27
|
|
|
28
28
|
def self.attr_accessor(name) # :nodoc: internal API
|
|
29
29
|
name = name.to_sym
|
|
30
|
+
raise ArgumentError, "already defined #{name}" if attributes.include?(name)
|
|
31
|
+
attributes << name
|
|
30
32
|
def_delegators :data, name, :"#{name}="
|
|
31
33
|
end
|
|
32
34
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
private_class_method :attributes
|
|
35
|
+
# An array of Config attribute names
|
|
36
|
+
singleton_class.attr_reader :attributes
|
|
37
|
+
@attributes = []
|
|
37
38
|
|
|
38
39
|
def self.struct # :nodoc: internal API
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
end
|
|
42
|
-
self::Struct
|
|
40
|
+
attributes.freeze
|
|
41
|
+
Struct.new(*attributes)
|
|
43
42
|
end
|
|
44
43
|
|
|
45
44
|
def initialize # :notnew:
|
|
46
45
|
super()
|
|
47
|
-
@data =
|
|
46
|
+
@data = Config::Struct.new
|
|
48
47
|
end
|
|
49
48
|
|
|
50
49
|
# Freezes the internal attributes struct, in addition to +self+.
|