Permalink
Browse files

Final move to mono-repo

1 parent 8f7f387 commit 9feb0f0e6c6d3e85c67c7b380458f52b8f96fd9b @jakl jakl committed Jan 27, 2015
Showing with 0 additions and 6,127 deletions.
  1. +0 −3 Gemfile
  2. +0 −12 Gemfile.lock
  3. +0 −188 LICENSE
  4. +0 −113 README.md
  5. +0 −64 Rakefile
  6. +0 −777 autolink.yml
  7. +0 −905 extract.yml
  8. +0 −73 hit_highlighting.yml
  9. +0 −752 tld_lib.yml
  10. +0 −3,000 tlds.yml
  11. +0 −240 validate.yml
View
@@ -1,3 +0,0 @@
-source "https://rubygems.org"
-
-gem 'nokogiri'
View
@@ -1,12 +0,0 @@
-GEM
- remote: https://rubygems.org/
- specs:
- mini_portile (0.6.0)
- nokogiri (1.6.3.1)
- mini_portile (= 0.6.0)
-
-PLATFORMS
- ruby
-
-DEPENDENCIES
- nokogiri
View
188 LICENSE
@@ -1,188 +0,0 @@
-Copyright 2011 Twitter, Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this work except in compliance with the License.
-You may obtain a copy of the License below, or at:
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
-TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
-2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
-3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
-4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
-5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
-6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
-7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
-8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
-9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
View
113 README.md
@@ -1,116 +1,3 @@
## Deprecation Notice!
This repository has been merged into the [twitter-text mono-repo](https://github.com/twitter/twitter-text) to simplify development, testing, creating issues, and pull requests. This repo is now inactive; please continue all activity in the mono-repo and move existing issues there.
-
-## Purpose
-
-This conformance package provides a cross-platform definition of the test cases for auto linking, extracting and hit
-highlighting of Tweets. The primary use for this is the twitter-text-* libraries; both those managed by Twitter and
-those created by the community.
-
-The reason for this conformance suite is to provide a way to keep the various implementations of Twitter text handling
-working in a consistent and interoperable way. While anyone can feel free to implement this logic however they choose
-the recommendation to developers is to use libraries which pass this conformance suite.
-
-## Format
-
-The test cases are stored in YAML files. There is one YAML file for each major operation type, and within those files
-there is one section for each publicly accessible API. Each test case is defined by:
-
- * description: This provides a meaningful name for the test case, for use as an error message if a test fails.
- * text: The input text of the Tweet.
- * expected: What results are expected for this input text
-
-## Guidelines for use
-
-If you are creating a new twitter-text library in a different programming language please follow these few guidelines:
-
-1. Create a test which reads these files and executes the test cases.
- 1.a. Do not convert these files to test cases statically. These test cases will change over time.
-
-2. Be sure to implement all of the publicly accessible APIs (the keys to the YAML file)
-
-3. Only expose the public API method and not the underlying regular expressions
- 3.a. If your language or environment does not allow for this please make a comment to the effect
- 3.b. This prevents breakage when regular expressions need to change in fundamental ways
-
-## Submitting new conformance tests
-
- * You can fork the github.com repository at https://github.com/twitter/twitter-text-conformance
- * Add your new tests and send a pull request.
-
- * You can open an issue on github.com at https://github.com/twitter/twitter-text-conformance/issues
- * Please be sure to provide example input and output as well as a brief description of the problem.
-
-## Changelog
- * v1.4.9 - 2011-12-01 [ Git tag v1.4.9 ]
- * [FIX] Apply stricter parsing of t.co URLs
- * [FIX] Extract @mention and hashtag before newline
- * [FIX] Extract URLs without protocol on ccTLD domain with slash
-
- * v1.4.8 - 2011-11-02 [ Git tag v1.4.8 ]
- * [FIX] Extract URLs without protocol in CJK text
- * [FIX] Do not extract URL in hashtag
- * [FIX] Extract hashtag after bracket
- * [FIX] Extract URL with '?' in fragment
-
- * v1.4.7 - 2011-10-04 [ Git tag v1.4.7 ]
- * [FIX] Extract URLs followed by punctuations
- * [FIX] Extract URLs without protocol in CJK text
- * [FIX] Extract URLs with '.'
-
- * v1.4.5 - 2011-09-20 [ Git tag v1.4.5 ]
- * [FIX] Extract URLs without protocol
- * [FIX] Extract URLs with '.', '|' and '&'
-
- * v1.4.4 - 2011-08-05 [ Get tag v1.4.4 ]
- * [FIX] Support ş (U+015F) in hashtags
- * [FIX] Support latin accents in URL paths
- * [FIX] Add a test for a common cause for runaway regex engines
-
- * v1.4.3 - 2011-07-13 [ Git tag v1.4.3 ]
- * [FIX] Japanese autolink including long vowel mark (chouon)
- * [FIX] Japanese autolink after a full-width exclamation point
- * [FIX] Japanese autolink including ideographic iteration mark
- * [FIX] Add hashtag extraction with indices test for new language hashtags
- * [FIX] Add hashtag extraction with indices test for multiple latin hashtags
-
- * v1.4.2 - 2011-07-08 [ Git tag v1.4.2 ]
- * [FIX] Additional Japanese hashtag autolinking tests
-
- * v1.4.1 - 2011-05-18 [ Git tag v1.4.1 ]
- * [FIX] Add support for Russian hashtags
- * [FIX] Add support for Korean hashtags
- * [FIX] Add support for Japanese hashtags (Katakana, Hiragana and Kanji)
- * [FIX] Add support for autolinking punycode domain names and TLDs (via punycode)
- * [DOC] Update README and License
-
- * v1.3.1 - 2010-12-03 - [ Git tag v1.3.1 ]
- * [DOC] Updated README with Changelog section
- * [FIX] Autolink URLs with paths ending in + and -
- * [FIX] Extract URLs with paths ending in + and -
-
- * v1.3.0 - 2010-12-03 - [ Git tag v1.3.0 ]
- * [NOTE] First tagged version (sorry)
- * [DOC] Updated README file with guidelines for use and format information
- * [FIX] Do not autolink URLs without protocols
- * [FIX] Do not extract URLs without protocols
-
- * v1.0.0 - 2010-01-21 - [ Git tag v1.0.0 (retroactively) ]
- * Initial version
-
-## Copyright and License
-
- Copyright 2011 Twitter, Inc.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this work except in compliance with the License.
- You may obtain a copy of the License in the LICENSE file, or at:
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
View
@@ -1,64 +0,0 @@
-require 'open-uri'
-require 'nokogiri'
-require 'yaml'
-
-namespace :tlds do
- desc 'Grab tlds from iana and save to tld_lib.yml'
- task :iana_update do
- doc = Nokogiri::HTML(open('http://www.iana.org/domains/root/db'))
- tlds = []
- types = {
- 'country' => /country-code/,
- 'generic' => /generic|sponsored|infrastructure|generic-restricted/,
- }
-
- doc.css('table#tld-table tr').each do |tr|
- info = tr.css('td')
- next if info.empty?
-
- tlds << {
- domain: info[0].text.gsub('.', ''),
- type: info[1].text
- }
- end
-
- def select_tld(tlds, type)
- tlds.select {|i| i[:type] =~ type}.map {|i| i[:domain]}.sort
- end
-
- yml = {}
- types.each do |name, regex|
- yml[name] = select_tld(tlds, regex)
- end
-
- File.open(repo_path('tld_lib.yml'), 'w') do |file|
- file.write(yml.to_yaml)
- end
- end
-
- desc 'Update tests from tld_lib.yml'
- task :generate_tests do
- test_yml = { 'tests' => { } }
-
- path = repo_path('tld_lib.yml')
- yml = YAML.load_file(path)
- yml.each do |type, tlds|
- test_yml['tests'][type] = []
- tlds.each do |tld|
- test_yml['tests'][type].push(
- 'description' => "#{tld} is a valid #{type} tld",
- 'text' => "https://twitter.#{tld}",
- 'expected' => ["https://twitter.#{tld}"],
- )
- end
- end
-
- File.open('tlds.yml', 'w') do |file|
- file.write(test_yml.to_yaml)
- end
- end
-end
-
-def repo_path(*path)
- File.join(File.dirname(__FILE__), *path)
-end
Oops, something went wrong.

0 comments on commit 9feb0f0

Please sign in to comment.