- Selenium Webdriver download page - https://docs.seleniumhq.org/download/
- Selenium Webdriver changelog - https://raw.githubusercontent.com/SeleniumHQ/selenium/master/java/CHANGELOG
- Chromedriver download page - https://chromedriver.chromium.org/downloads
- Gecko driver releases - https://github.com/mozilla/geckodriver/releases
- Old version of mozilla firefox - https://ftp.mozilla.org/pub/firefox/releases/
- Calendar with features of chrome - https://www.chromestatus.com/features/schedule
- Latest chrome versions provider - https://omahaproxy.appspot.com
- Check version of chrome extension service - https://crx-checker.appspot.com/
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
** | |
* Workaround of https://github.com/spring-projects/spring-boot/issues/9785 from https://stackoverflow.com/a/45190717/1477873 | |
* | |
* @author Sergey Alekseev | |
*/ | |
@Component | |
public class CustomWebFilter implements WebFilter { | |
@NotNull | |
@Override | |
public Mono<Void> filter(ServerWebExchange exchange, @NotNull WebFilterChain chain) { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
COMMAND="$1" | |
IGNORED_MODULES=$(cat .ignored_modules 2> /dev/null) | |
RED_COLOR='\033[0;31m' | |
GREEN_COLOR='\033[0;32m' | |
GRAY_COLOR='\033[0;2m' | |
NO_COLOR='\033[0m' | |
_EXPOSE_PARAMS="shift 2" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
git filter-branch --env-filter ' | |
WRONG_EMAIL="wrong@email.com" | |
NEW_NAME="Sergey Alekseev" | |
NEW_EMAIL="sergey@alekseev.bz" | |
if [ "$GIT_COMMITTER_EMAIL" = "$WRONG_EMAIL" ] | |
then | |
export GIT_COMMITTER_NAME="$NEW_NAME" | |
export GIT_COMMITTER_EMAIL="$NEW_EMAIL" | |
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const puppeteer = require('puppeteer'); | |
(async () => { | |
const browser = await puppeteer.launch(); | |
const page = await browser.newPage(); | |
await page.goto('https://github.com'); | |
await page.screenshot({path:`page-screenshot-${new Date()}.png`}); | |
await browser.close(); | |
})(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const puppeteer = require('puppeteer'); | |
(async () => { | |
const browser = await puppeteer.launch(); | |
const page = await browser.newPage(); | |
await page.goto('https://github.com', {waitUntil: 'networkidle2'}); | |
await page.pdf({path: 'page.pdf', format: 'A4'}); | |
await browser.close(); | |
})(); |
Подходы к управлению модулями в Angular (и не только) https://habr.com/ru/company/tinkoff/blog/467525/
По следам Angular Meetup #15 https://habr.com/ru/company/tinkoff/blog/467645/
Angular: когда надо пилить приложение, а backend еще не готов https://habr.com/ru/post/460109/
Асинхронное программирование в JavaScript (Callback, Promise, RxJs )
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
# Copyright 2009-2010: dogbert <dogber1@gmail.com> | |
# | |
# This program is free software; you can redistribute it and/or modify | |
# it under the terms of the GNU General Public License as published by | |
# the Free Software Foundation; either version 2 of the License, or | |
# (at your option) any later version. | |
# | |
# This program is distributed in the hope that it will be useful, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void shutdownAndAwaitTermination(ExecutorService pool) { | |
pool.shutdown(); // Disable new tasks from being submitted | |
try { | |
// Wait a while for existing tasks to terminate | |
if (!pool.awaitTermination(60, TimeUnit.SECONDS)) { | |
pool.shutdownNow(); // Cancel currently executing tasks | |
// Wait a while for tasks to respond to being cancelled | |
if (!pool.awaitTermination(60, TimeUnit.SECONDS)) | |
System.err.println("Pool did not terminate"); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class A { | |
private String message; | |
public A(String message) { | |
this.message = message; | |
} | |
public String getMessage() { | |
return message; | |
} |
NewerOlder