def METHOD_NAME(forums_username, force_replace_pic=False):
	print("### Checking " + forums_username, file=sys.stderr)
	try:
		profile = get_profile("https://forum.minetest.net", forums_username)
	except OSError as e:
		print(e, file=sys.stderr)
		return
	if profile is None:
		return
	user = User.query.filter_by(forums_username=forums_username).first()
	# Create user
	needs_saving = False
	if user is None:
		user = User(forums_username)
		user.forums_username = forums_username
		db.session.add(user)
	# Get GitHub username
	github_username = profile.get("github")
	if github_username is not None and github_username.strip() != "":
		print("Updated GitHub username for " + user.display_name + " to " + github_username)
		user.github_username = github_username
		needs_saving = True
	pic = profile.avatar
	if pic and pic.startswith("http"):
		pic = None
	# Save
	if needs_saving:
		db.session.commit()
	if pic:
		pic = urljoin("https://forum.minetest.net/", pic)
		print(f"####### Picture: {pic}", file=sys.stderr)
		print(f"####### User pp {user.profile_pic}", file=sys.stderr)
		pic_needs_replacing = user.profile_pic is None or user.profile_pic == "" or \
				user.profile_pic.startswith("https://forum.minetest.net") or force_replace_pic
		if pic_needs_replacing and pic.startswith("https://forum.minetest.net"):
			print(f"####### Queueing", file=sys.stderr)
			set_profile_picture_from_url.delay(user.username, pic)
	return needs_saving