Skip to content

Commit

Permalink
Updates on files
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander Rogalskiy committed Apr 10, 2022
1 parent c0edce5 commit b4dce30
Show file tree
Hide file tree
Showing 115 changed files with 57,021 additions and 29 deletions.
58 changes: 30 additions & 28 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,34 +45,36 @@
## 🎹 *Table of contents*

<!--ts-->
* [Java Design Patterns](#java-design-patterns)
* [<em>Table of contents</em>](#-table-of-contents)
* [<em>Summary</em>](#-summary)
* [<em>Documentation</em>](#-documentation)
* [<em>Kubernetes</em>](#-kubernetes)
* [<em>Statistics</em>](#-statistics)
* [<em>Versioning</em>](#-versioning)
* [<em>Authors</em>](#-authors)
* [<em>Contributing</em>](#-contributing)
* [<em>Visitor stats</em>](#-visitor-stats)
* [<em>Licensing</em>](#-licensing)
* [<em>Development Support</em>](#-development-support)
* [<em>Acknowledgement</em>](#-acknowledgement)
* [<em>OpenGraph Card</em>](#-opengraph-card)
* [<em>Feeds and Podcasts</em>](#-feeds-and-podcasts)
* [<em>Reddit posts</em>](#reddit-posts)
* [<em>InfoWorld posts</em>](#infoworld-posts)
* [<em>Let's talk posts</em>](#lets-talk-posts)
* [<em>Random thoughts posts</em>](#random-thoughts-posts)
* [<em>Better code posts</em>](#better-code-posts)
* [<em>Inside Java posts</em>](#inside-java-posts)
* [<em>Java programmer posts</em>](#java-programmer-posts)
* [<em>Dreamix posts</em>](#dreamix-posts)
* [<em>Plumbr posts</em>](#plumbr-posts)
* [<em>Thorben Janssen posts</em>](#thorben-janssen-posts)
* [<em>Redhat posts</em>](#redhat-posts)
* [<em>JavaCodeGeeks posts</em>](#javacodegeeks-posts)
* [<em>DevCases posts</em>](#devcases-posts)

- [Java Design Patterns](#java-design-patterns)
- [<em>Table of contents</em>](#-table-of-contents)
- [<em>Summary</em>](#-summary)
- [<em>Documentation</em>](#-documentation)
- [<em>Kubernetes</em>](#-kubernetes)
- [<em>Statistics</em>](#-statistics)
- [<em>Versioning</em>](#-versioning)
- [<em>Authors</em>](#-authors)
- [<em>Contributing</em>](#-contributing)
- [<em>Visitor stats</em>](#-visitor-stats)
- [<em>Licensing</em>](#-licensing)
- [<em>Development Support</em>](#-development-support)
- [<em>Acknowledgement</em>](#-acknowledgement)
- [<em>OpenGraph Card</em>](#-opengraph-card)
- [<em>Feeds and Podcasts</em>](#-feeds-and-podcasts)
- [<em>Reddit posts</em>](#reddit-posts)
- [<em>InfoWorld posts</em>](#infoworld-posts)
- [<em>Let's talk posts</em>](#lets-talk-posts)
- [<em>Random thoughts posts</em>](#random-thoughts-posts)
- [<em>Better code posts</em>](#better-code-posts)
- [<em>Inside Java posts</em>](#inside-java-posts)
- [<em>Java programmer posts</em>](#java-programmer-posts)
- [<em>Dreamix posts</em>](#dreamix-posts)
- [<em>Plumbr posts</em>](#plumbr-posts)
- [<em>Thorben Janssen posts</em>](#thorben-janssen-posts)
- [<em>Redhat posts</em>](#redhat-posts)
- [<em>JavaCodeGeeks posts</em>](#javacodegeeks-posts)
- [<em>DevCases posts</em>](#devcases-posts)

<!--te-->

<div style="text-align: right"><a href="https://github.com/AlexRogalskiy/java-patterns#java-design-patterns"><i>(back to top)</i></a></div>
Expand Down
7 changes: 6 additions & 1 deletion codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@ codecov:
coverage:
precision: 2
round: down
range: '70...100'
range:
- 70.0
- 100.0
status:
changes: false
project:
default:
informational: true
Expand All @@ -14,6 +17,8 @@ coverage:
informational: true

parsers:
javascript:
enable_partials: false
gcov:
branch_detection:
conditional: yes
Expand Down
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,7 @@
"crowdin:pull": "crowdin pull --skip-untranslated-strings",
"crowdin:upload": "crowdin --config crowdin.yml upload sources --auto-update -b $(git rev-parse --abbrev-ref HEAD)",
"deploy": "deploy-to-gh-pages --local --update site",
"deps": "npm install",
"docker:build": "docker build -f ./distribution/docker-images/dev.Dockerfile -t $npm_package_config_image .",
"docker:config": "docker-compose config",
"docker:run": "docker run -ti --rm -v ${PWD}:/usr/src/app -e CI=1 $npm_package_config_image build --strict",
Expand Down Expand Up @@ -210,6 +211,7 @@
"markdown": "markdown-link-check ./README.md ./SECURITY.md",
"package:changelog": "npm run dev --base_dir=../../ --workspace=packages/changelog --if-present",
"package:contributors": "npm run dev --image_dir=../../images --workspace=packages/contributors --if-present",
"package:schema": "npm run dev --source_dir1=../../docs --source_dir2=../../docs --workspace=packages/schema --if-present",
"patch": "patch-package",
"postinstall": "npm run husky:install",
"postversion": "git push --follow-tags && npm publish --access public",
Expand Down
22 changes: 22 additions & 0 deletions packages/schema-diff/.codeclimate.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
engines:
csslint:
enabled: true
duplication:
enabled: true
config:
languages:
- javascript
eslint:
enabled: true
fixme:
enabled: true
ratings:
paths:
- "**.ts"
- "**.js"
- "**.css"
exclude_paths:
- "tests/"
- "**/*.test.*"
- "node_modules/"
25 changes: 25 additions & 0 deletions packages/schema-diff/.env-cmdrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"dev": {
"DEBUG": "true",
"LOGLEVEL": "trace",
"NODE_ENV": "dev",
"NODE_OPTIONS": "--max-old-space-size=3584"
},
"prod": {
"DEBUG": "false",
"LOGLEVEL": "debug",
"NODE_ENV": "prod",
"NODE_OPTIONS": "--max-old-space-size=3584"
},
"test": {
"TZ": "utc",
"NODE_ENV": "test",
"NODE_OPTIONS": "--max-old-space-size=3584",
"DEBUG": "true",
"LOGLEVEL": "debug",
"FORCE_COLOR": "true"
},
"ci": {
"CI": "true"
}
}
66 changes: 66 additions & 0 deletions packages/schema-diff/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Log files
*.log
logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# BlueJ files
*.ctxt
*.iml

# Cache files
.npm
.eslintcache
build.txt
.ghpages-tmp

# Package files
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
*.tgz
**/.DS_Store

# License files
licenses.json

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
pids
*.pid
*.seed
*.pid.lock

# Yarn Integrity file
.yarn-integrity

# TypeScript cache
*.tsbuildinfo

# Optional REPL history
.node_repl_history

# Build and temp folders
.settings/
.idea/
.reporting/
bin/
tmp/
build/*
coverage/
coverage-ts/
target/
log/
site/
dist/
.cache
node_modules

# Env files
.env
54 changes: 54 additions & 0 deletions packages/schema-diff/.solidarity
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
{
"$schema": "https://json.schemastore.org/solidaritySchema",
"requirements": {
"node": [
{
"rule": "cli",
"binary": "node",
"semver": ">=12.0.0",
"version": "--version"
}
],
"npm": [
{
"rule": "cli",
"binary": "npm",
"semver": ">=5.0.0",
"version": "--version"
}
],
"yarn": [
{
"rule": "cli",
"binary": "yarn",
"semver": ">=3.0.0",
"version": "--version"
}
],
"package.json": [
{
"rule": "file",
"location": "./package.json"
}
],
"git email": [
{
"rule": "shell",
"command": "git config user.email",
"match": ".+@.+"
}
],
"typeScript": [
{
"rule": "dir",
"location": "./src",
"error": "Did you get this code from npm? Try GitHub!"
},
{
"rule": "dir",
"location": "./dist",
"error": "You haven't compiled. Run the build script!"
}
]
}
}
13 changes: 13 additions & 0 deletions packages/schema-diff/LICENSE_TEMPLATE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Copyright (C) 2022 SensibleMetrics, Inc. (http://sensiblemetrics.io/)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License 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.

1 comment on commit b4dce30

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented on b4dce30 Apr 10, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@check-spelling-bot Report

Unrecognized words, please review:

  • ADR
  • akka
  • api
  • arcver
  • boopickle
  • bugfixes
  • ceb
  • committers
  • dropdown
  • eab
  • facebook
  • fastai
  • fastpages
  • fastparse
  • FRP
  • fthomas
  • getquill
  • GIFs
  • gitbook
  • gitflow
  • Gradle
  • guideslines
  • Hashids
  • Hasids
  • hmil
  • IPhone
  • japgolly
  • JDK
  • JRE
  • julienrf
  • Jupyter
  • lihaoyi
  • logfile
  • mades
  • matryoshka
  • mcve
  • milessabin
  • modelviewculture
  • monix
  • mtl
  • nullables
  • nvie
  • objectmappers
  • oyanglul
  • pasteable
  • paypal
  • PITMP
  • precog
  • quicklens
  • reactify
  • Rogalskiy
  • Rogalsky
  • rubyonrails
  • scalacss
  • scalafiddle
  • scalafmt
  • scalajs
  • scalameta
  • scalanlp
  • scalastyle
  • scalaz
  • scm
  • softwaremill
  • spamming
  • squants
  • squbs
  • sscce
  • stakeholders
  • sttp
  • stylegu
  • suggestig
  • suzaku
  • tilda
  • typelevel
  • udash
  • upickle
  • ussue
  • violoate
  • wix
  • zio
Previously acknowledged words that are now absent acl activesupport adaoraul addons aeiou AFile afterall Alexey alfredxing algolia allowfullscreen Anatoliy andreyvit Ankit Anning apps appveyor arengu args ariejan arounds asciinema asdf ashmaroli attr Autobuild autocompletion autogenerated Autolink autoload autoreconf autosave awood aws awscli backend backport backtick barcamp baseurl bashrc baz bbatsov bdimcheff bellvat benbalter Beney binstubs bip bitbucket Blogger blogging bonafide Bou breadcrumbs briandoll bridgetown bridgetownrb brightbox brighterplanet buddyworks Bugfix Burela byparker cachegrind calavera callgraphs cartera cavalle CDNs cgi changefreq chango charset Chayoung chcp chdir Cheatsheet Checkoway chmod chown Chrononaut chruby cibuild cimg circleci CJK classname cloudcannon Cloudinary cloudsh CLT codeclimate CODEOWNERS coderay codeslinger coffeescript colorator commandline commonmark compat compatibilize concat config configyml contentblocks CORS Cov CRLFs cron crontab cruft css csv Currin CVE CWD cygwin daringfireball Dassonville datafiles datetime DCEU Debian debuggability defunkt delegators deployer deps dest Devkit devops digitalocean dirs disqus ditaa dnf doclist doctype doeorg dommmel dotfile Dousse downcase downcased duckduckgo duritong Dusseau dysinger ecf editorconfig eduardoboucas Elasticsearch elsif Emacs emails emoji endcapture endcomment endfor endhighlight endif endraw endrender endtablerow Enumerables EOL erb errordocument Espinaco eugenebolshakov evaled exe execjs extensionpack extname exts favicon Fengyun ffi figcaption filesystem Finazzo firstimage FIXME flakey flickr fnmatch fontello forloop formcake formcarry formester formingo formkeep formspark formspree formx Forwardable frameborder freenode frontend frontmatter fsnotify ftp fullstory Gaudino gcc gcnovus gemfile gemset gemspec getform getset getsimpleform gettalong gfm ghp ghpages giraffeacademy githubcom githubusercontent gitignore gitlab gjtorikian globbed globbing google gotcha Goulven gridism GSo gsub gsubbing Hakiri hardcode hashbang hashmap helaili henrik heredoc heroku highlighter hilighting Hoizey homepage hostman hostname href htaccess htm htmlproofer httpd httpdocs hyperlinks Iaa ial ico icomoon iconset ified iframe img Impl Inlining invokables irc ivey ize jalali jameshamann jamstackthemes jan javascript Jax jayferd jcon jdoe jeffreytse jeffrydegrande Jekpack jekyllbot jekyllconf Jekyllers Jekyllin Jekylling jekyllized jekylllayoutconcept jekyllrb jekyllthemes jemoji jmcglone jneen johnreilly jpg jqr jruby jsonify juretta jwarby Kacper Kasberg kbd Kentico Kewin keycdn kickster Kinnula kiwifruit Kolesky konklone kontent Kotvinsky kramdown Kulig Kwokfu Lamprecht laquo lastmod launchctl launchy laurilehmijoki ldquo learnxinyminutes lexer LGTM libcurl libffi lightgray limjh linenos linkify linux liufengyun livereload localheinz localhost localtime Locher loglevel Losslessly lovin lsi lsquo lstrip lyche macos macromates mademistakes Manmeet markdownify Maroli Marsceill maruku mathjax mathml mattr Maximiliano mchung mdash memberspace Memoize memoized memoizing mentoring mergable Mertcan mertkahyaoglu microdata microsoft mimetype mingw minibundle minifier minitest Mittal mixin mkasberg mkd mkdir mkdn mkdown mmistakes modernizr mojombo moncefbelyamani moz mreid msdn mswin MSYS mtime multiline munging Mvvm myblog mycontent mydata mydoc myimage mypage myposts myproject myrepo mysite myvalue myvar myvariable Nadjib nakanishi namespace namespaced navbar nbsp nearlyfreespeech nethack netlify netlifycms Neue nginx ngx nielsenramon nior nodejs noifniof nokogiri notextile onclick onebox oneclick onschedule openssl Optim orderofinterpretation orgs OSVDB osx packagecontrol pacman paginator pandoc pantulis params parkr parseable paspagon passthrough pathawks Pathutil paywall pdf Pelykh permalink PHP pinboard Piwigo pjhyett pkill pkpass placeholders planetjekyll plantuml plugin png podcasts popen Porcel Posterous postfiles postlayout postmodern prefetching preinstalled prepends Prioritise Probot projectlist pubstorm pufuwozu pwa pwd pygments qrush Quaid quickstart rackup Rakefile razorops rbenv rdiscount rdoc rdquo readme realz rebund redcarpet redcloth redgreen redhat refactor Refheap regen regex regexp remi reqs Responsify revertable rfc rfelix RHEL ridk roadmap rowspan rspec rsquo rss rstrip rsync rtomayko Rubo rubocop rubychan rubygem rubyinstaller rubyprof Ruparelia Rusiczki rvm ryanflorence saas samplelist samrayner sandboxed Sassc sassify schemastore Schroers Schwartzian scp scrollbar scroller scss scssify sdk SDKROOT sectore seo serverless setenv SFTP shingo shopify shortlog shoulda sieversii sigpipe simplecov Singhaniya siteleaf sitemap SITENAME Slicehost slugified slugify smartforms smartify snipcart somedir sonnym Sonomy sourced sourcemaps spam spotify src ssg ssh SSL staticfiles staticman statictastic STDERR stdout Stickyposts strftime stringified Stringify stylesheet subdir subdomain subfolder subfolderitems subnav subpages subpath subpiece subsubfolderitems subthing subvalues subwidget sudo superdirectories superdirs SUSE sverrirs svg svn swfobject swupd symlink symlinking tablerow tada Taillandier talkyard tbody technicalpickles templating templatize Termux textilize textpattern thead therubyracer Theunissen Thornquest thoughtbot throughs Tidelift timeago timezone titleize TLS tmm tmp toc tok tomjoht toml tomo toolset toshimaru triaged triaging truncatewords tsv ttf Tudou Tumblr Tweetsert txtpen Tyborska tzinfo ubuntu uby ujh ultron undumpable unencode Unescape unescaping unicode uniq upcase uppercasing uri urlset username usr utf utils utime utm vanpelt Vasovi vendored vercel versioned versioning vertycal Veyor vilcans Vishesh visualstudio vnd vohedge vps vscode vwochnik Walkthroughs wdm We'd webfont webhook webhosting webmentions webrick website weekdate whitelist whitelisting wikipedia wildcards willcodeforfoo woff wordpress Workaround wsl xcode xcrun xdg Xhmikos xhtml Xiaoiver XMinutes xmlns xmlschema yajl Yarp Yashu Yastreb yml Youku youtube yunbox zeropadding Zlatan zlib zoneinfo zpinter Zsh zshrc zypper zzot
Some files were were automatically ignored

These sample patterns would exclude them:

^docs/CHANGELOG\.md$

You should consider adding them to:

.github/actions/spelling/excludes.txt

File matching is via Perl regular expressions.

To check these files, more of their words need to be in the dictionary than not. You can use patterns.txt to exclude portions, add items to the dictionary (e.g. by adding them to allow.txt), or fix typos.

To accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands

... in a clone of the git@github.com:AlexRogalskiy/java-patterns.git repository
on the master branch:

update_files() {
perl -e '
my @expect_files=qw('".github/actions/spelling/expect.txt"');
@ARGV=@expect_files;
my @stale=qw('"$patch_remove"');
my $re=join "|", @stale;
my $suffix=".".time();
my $previous="";
sub maybe_unlink { unlink($_[0]) if $_[0]; }
while (<>) {
if ($ARGV ne $old_argv) { maybe_unlink($previous); $previous="$ARGV$suffix"; rename($ARGV, $previous); open(ARGV_OUT, ">$ARGV"); select(ARGV_OUT); $old_argv = $ARGV; }
next if /^(?:$re)(?:(?:\r|\n)*$| .*)/; print;
}; maybe_unlink($previous);'
perl -e '
my $new_expect_file=".github/actions/spelling/expect.txt";
use File::Path qw(make_path);
use File::Basename qw(dirname);
make_path (dirname($new_expect_file));
open FILE, q{<}, $new_expect_file; chomp(my @words = <FILE>); close FILE;
my @add=qw('"$patch_add"');
my %items; @items{@words} = @words x (1); @items{@add} = @add x (1);
@words = sort {lc($a)."-".$a cmp lc($b)."-".$b} keys %items;
open FILE, q{>}, $new_expect_file; for my $word (@words) { print FILE "$word\n" if $word =~ /\w/; };
close FILE;
system("git", "add", $new_expect_file);
'
(cat '.github/actions/spelling/excludes.txt' - <<EOF
$should_exclude_patterns
EOF
) |grep .|
sort -f |
uniq > '.github/actions/spelling/excludes.txt.temp' &&
mv '.github/actions/spelling/excludes.txt.temp' '.github/actions/spelling/excludes.txt'
}

comment_json=$(mktemp)
curl -L -s -S \
  --header "Content-Type: application/json" \
  "https://api.github.com/repos/AlexRogalskiy/java-patterns/comments/70919534" > "$comment_json"
comment_body=$(mktemp)
jq -r .body < "$comment_json" > $comment_body
rm $comment_json

patch_remove=$(perl -ne 'next unless s{^</summary>(.*)</details>$}{$1}; print' < "$comment_body")
  

patch_add=$(perl -e '$/=undef;
$_=<>;
s{<details>.*}{}s;
s{^#.*}{};
s{\n##.*}{};
s{(?:^|\n)\s*\*}{}g;
s{\s+}{ }g;
print' < "$comment_body")
  

should_exclude_patterns=$(perl -e '$/=undef;
$_=<>;
exit unless s{(?:You should consider excluding directory paths|You should consider adding them to).*}{}s;
s{.*These sample patterns would exclude them:}{}s;
s{.*\`\`\`([^`]*)\`\`\`.*}{$1}m;
print' < "$comment_body" | grep . || true)

update_files
rm $comment_body
git add -u
If you see a bunch of garbage

If it relates to a ...

well-formed pattern

See if there's a pattern that would match it.

If not, try writing one and adding it to the patterns.txt file.

Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.

Note that patterns can't match multiline strings.

binary-ish string

Please add a file path to the excludes.txt file instead of just accepting the garbage.

File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.

^ refers to the file's path from the root of the repository, so ^README\.md$ would exclude README.md (on whichever branch you're using).

Please sign in to comment.