Online demo of the very interesting
KNN-Classifier
Github in the
TFJS-models repository
KNN-Classifier takes a Deep Learning model and uses K-Nearest-Neighbor analysis to it. So you can, from a website,
live "Train" objects from the model and get results at the same time!
This time we are going to use
face-api.js to run a 68 point face detection
model then train the knn-classifier on people. Kind of fun to google celebrities for training then check out the rest of us. The KNN classifier
will detect the closest celebrity.
I am looking into how to save the knn-classfier data with labels.
...


{% extends 'base.html' %} {% block content %}
Welcome to Open Run Log, a fast and easy (and free!) way to record your running. Open Run Log will always be free to use and will focus on making sure it is easy to export your data to make sure you can leave whenever you'd like.
Open run log is also Open Source which means you can easily make contributions or even run a copy on your own server. Fork the code on Github!
{% end %}


--- layout: single author: ashim888 title: "Contact Us" excerpt: "We're Happy To Help" permalink: /contact/ header: overlay_image: /assets/images/matrix.jpg image_description: "A description of the image" caption: "Photo credit: [**Unsplash**](https://unsplash.com)" ---


10,123 Item Views
5,456 Downloads
This is a report of the federal government.
Funding Agency or Grant
U.S. Commission on Civil Rights
Part 18: The Current Situation
JOURNAL OF CIVIL RIGHTS ADMINISTRATION
Volume 118, Issue 9
July 17, 2003, Pages 454-999
Version: Post-Print
Type: PDF
Status: In Repository & Public Domain
doi:110.100009928.89898
The federal government has a long-established special relationship with Native Americans characterized by their status as governmentally independent ventities, dependent on the United States for support and protection. In exchange for land and in compensation for forced removal from their original homelands, the government promised through laws, treaties, and pledges to support and protect Native Americans. However, funding for programs associated with those promises has fallen short, and Native peoples continue to suffer the consequences of a discriminatory history. Federal efforts to raise Native American living conditions to the standards of others have long been in motion, but Native Americans still suffer higher rates of poverty, poor educational achievement, substandard housing, and higher rates of disease and illness. Native Americans continue to rank at or near the bottom of nearly every social, health, and economic indicator.
A Quiet Crisis: Federal Funding and Unmet Needs in Indian Country. Part 18: The Current Situation, Journal of Civil Rights Administration (July 17, 2003), Volume 118, Issue 9, Pages 454-999
Export Citation
Add Comment
27 Comments:
Joseph Somebody
12 days ago
Fusce dignissim neque vitae justo. Ut vehicula, purus vitae interdum euismod, lacus neque dignissim pede, vitae condimentum est tortor a risus. Fusce sollicitudin aliquet mi. Nulla facilisi. Vestibulum bibendum blandit lectus. Fusce vel lectus. Curabitur eget sem ornare felis gravida vestibulum.Sed pulvinar, tellus in venenatis vehicula, lorem magna dignissim erat, in accumsan ante lorem sit amet lorem. Proin quis neque sed justo consectetuer malesuada. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin eget urna quis quam sollicitudin vestibulum.
Joseph Somebody
12 days ago
Fusce dignissim neque vitae justo. Ut vehicula, purus vitae interdum euismod, lacus neque dignissim pede, vitae condimentum est tortor a risus. Fusce sollicitudin aliquet mi. Nulla facilisi. Vestibulum bibendum blandit lectus. Fusce vel lectus. Curabitur eget sem ornare felis gravida vestibulum.Sed pulvinar, tellus in venenatis vehicula, lorem magna dignissim erat, in accumsan ante lorem sit amet lorem. Proin quis neque sed justo consectetuer malesuada. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin eget urna quis quam sollicitudin vestibulum.


Example with 2 HTMLAreas in the same form

HTMLArea #1

This will submit a field named text1.

Second HTMLArea

text2 submission. Both are located in the same FORM element and the script action is 2-areas.cgi (see it in the examples directory)

SF_chris
Last modified: 2013-07-29 18:17:06


This means that automatic syncing and backup of templates has been disabled for you and your team.
Note: without template synchronisation you risk losing all your templates (if you delete the extension or re-install Chrome).
If you think this is a mistake and your subscription should be active please contact us<EMAIL_ADDRESS>Please notify the account owner. To hide this warning simply Log out.


It’s hard to get these right. Just b/c they work for one org doesn’t mean they’ll work for yours.
Building a Growth Framework - by Aaron Randall. Takeaway: About Songkick’s career growth framework’s nine roles and seven key values, and how the company created it.
Career Ladders - by Sarah Drasner. Takeaway: open source ladders for Engineering, Developer Experience, and Documentation.
Career Ladders Aren’t Enough – You Need a Thoughtful Promotion Process, Too - by Sarah Milstein. Takeaway: “Having built a process that appears to be reducing negative effects and increasing trustworthy promotions, I’m hopeful that the combination of career ladders and decision-making with a transparent structure can help many organizations grow more smoothly.”
Career Structure. It Doesn’t Matter. Until It Matters. - by Ade Trenaman. Takeaway: A comprehensive overview of career structure at Gilt, touching upon other companies’ models. Gilt’s model is based on Radford and considers these elements: Level of knowledge, job complexity, supervision, experience, sphere of influence and team size (for leads to manage), and accountability.
Engineering Ladders at Meetup - by Lara Hogan. Takeaway: Details on Meetup’s makers and managers tracks, plus a graphic showing the ladders for both.
Engineering Levels at Patreon - by Patreon. Takeaway: The engineering levels matrix, with details about each role.
How to Break the “Senior Engineer” Career Ceiling - by Yan Cui. Takeaway: “Writing more code or releasing more features alone doesn’t make you a better senior engineer. It’s about your ability to deliver a meaningful business impact through your execution. This is the change in mindset that will set you on your way to the next level.”
Khan Academy Engineering Career Development - by Khan Academy. Takeaway: describes the skills, scope, and experience of main engineering job categories, with values emphasised.
Medium Engineering Growth: Tracks - by David Shimon. Takeaway: Different skills/items for different types of developers, listed and detailed.
On Being a Senior Engineer - by John Allspaw. Focusing on attributing “Senior” to “Mature”. Covers aspects of being social. Mature engineers are at least aware of their ego, able to take into account the feelings and egos of their fellow engineers, and work through them all to achieve great things. This tends to make them engineers that other engineers want to work with.
Open Source Culture - by Camille Fournier. A post on Rent the Runway’s engineering ladder, by the company’s now-former CTO.
Programmer Competency Matrix - by Starling Software. Great for tech skills, but would need substantial work to capture what it means to be a well-rounded dev (“client focus,” “product ownership,” etc). We like it for what it is (“technical only”). You’d need to add the other sections.
Sharing Our Engineering Ladder - by Camille Fournier. Rent the Runway’s famous engineering ladder, in spreadsheet and text/doc formats.
The Software Engineering Job Ladder - by Chuck Groom. Takeaway: “why having a job ladder helps everybody; what makes for a good job ladder; the way I think about software engineer job levels; and […] some related advice.” Focuses on individual contributors. The author’s levels emphasize ownership and responsibility, not defined skill levels.
Technical Assessment Rubric - by Kate Heddleston. Takeaway: Different people have different trajectories. Tailor goals to target weaknesses in a category (confidence, communication, code quality, etc.).
Things to Know About Engineering Levels - by Charity Majors. Takeaway: practical advice on approaching career levels realistically and traveling up the rungs.
Thoughts on the Technical Track - by Dan McKinley. Thoughts on how the different ways developers become technical managers, including randomly and ad hoc. “I don’t think that proceeding with the assumption that leaders will just naturally emerge produces the best results.”
Truth and Consequences of the Technical Track - by Camille Fournier. Takeaway: “I think the idealistic goal of management is to help teams live up to their talent potential. The realistic experience of management is often an abstraction layer between upstream and downstream, to help flow information, each layer helping to make a finer-grained set of decisions and adjustments to keep the overall company moving in the right direction.”
Habits to Earn a Raise - by Ryan Latta. Takeaway: Get a journal to record your wins, set goals aligned with company goals and follow up, run at problems that everyone else avoids.
Lightweight, Continuous Goal-Setting - notes by Joe Goldberg. Takeaway: Set, evaluate and adjust goals on a regular basis. This doc contains goal-setting objectives, steps, tips, and a quarterly email template.
One Rubric Changed Box’s Engineering Performance — Here’s How - by First Round. Takeaway: How Box SVP Engineering Sam Schillace helped the tech organization scale up while valuing performance. Have clear standards for performance, have an opinion on the role of managers early, have a process for evaluation and reward, don’t be soft on low performance, be consistent without losing speed.
Three Paths in the Tech Industry: Founder, Executive, or Employee - by Michael Seibel. Takeaway: pros, cons, and strategies for pursuing all three paths.
Uncovering the Secret Powers of MailChimp Employees Through Apprenticeships - by MailChimp. Takeaway: MailChimp created a 90-day apprenticeship program for employees to explore their interests and curiosity about other roles. The program has strengthened diversity efforts and also helped employees launch new careers.
We Studied 100 Mentor-Mentee Matches — Here’s What Makes Mentorship Work - by First Round. Takeaway: Don’t use the word ‘mentor’, don’t treat it like a transaction, show up prepared with questions, don’t discuss everything, ask about your blind spots, look for themes and organizing principles, be honest and transparent, focus on execution, strive for mutual learning, always have several mentors.
When Mentoring Turns Toxic - by Lorraine Duffy Merkl. Takeaway: “In a best-case scenario, mentors induct young people into the traditions of their professions. But this dynamic can set the stage for destructive behavior, McClelland writes. Sometimes mentors try to stamp out daring ideas that threaten long-held principles in their fields. Others may see themselves as “gatekeepers” whose role is to cut upstarts down to size. And basic narcissism may lead mentors to act out when they feel threatened by promising protégés. Mentoring relationships can also go awry when young professionals feel beholden to their advisers."
Why The Right Change Often Feels Wrong - by Scott Berkun. Takeaway: “Inexperienced people often confuse the chaos phase as a failure in their choice. And if they quit early, assuming “chaos” means they made a mistake, and revert back to the old ways of doing things, they likely will never have the confidence to try something that bold again. They now confuse the chaos phase with failure. This is a kind of self-inflicted learned helplessness, where the necessary cost to improve and grow is now too psychologically expensive. People and organizations can become paralyzed here, as they’ve become extremely resistant to any threat of a ‘foreign element,’ even though that’s exactly what’s needed to grow."
From HR to People Ops: When and Why To Start a People Team - by Courtney Seiter at Buffer. Covers when to start a People team, and what to consider: team size and/or growth rate, start before you need one, and your reasons. Four why’s to start a team: to change the world, increase diversity, succeed, and allow your teammates to succeed.
How HR Can Become Agile (and Why It Needs To) - by Jeff Gothelf. Takeaway: “In an agile organization, HR needs to provide the same services it’s always provided — hiring, professional development, performance management — but in ways that are responsive to the ongoing changes in the culture and work style of the organization.”
How to Navigate the First 90 Days as the First HR Hire at a Startup - by Culture Codes. Takeaway: A profile of HR veteran Heather Doshay, who as VP of People for a startup aims to build healthy culture. “Small cracks aren’t always visible or might seem trivial, but if left untreated, they can break apart a company.” Surveys, observing meetings, scaling good attributes, hiring an HR professional early are some techniques companies can use to leverage HR expertise well.
What Is “People Operations” and Why Should You Care? - by Doug Devlin. Takeaway: “People Operations is based on the simple truth: to hold on to your talent, you have to understand and “take care” of your talent. Allowing employee choice based on analytics as opposed to emotional mandates is the cornerstone of People Operations. "
“We see things not as they are but as we are.” Giving reviews is a place where bias lurks. Understand the cognitive bias cheatsheet and mental models list and you’ll at least acknowledge that we’re all biased.
Assessing Employee Performance from Eric Elliot. Takeaway: “If you’re not listening closely to the employee you’re evaluating, and interviewing their peers about how helpful and knowledgable that employee is… And if the sum of that feedback is anything less than your primary gauge of performance …
Betterment Tested Three Performance Management Systems So You Don’t Have To - by FirstRound. Takeaway: “Create clear lanes for your team to run; and align your structure key and processes to achieve what needs to get done. Empower employees to run as well and as fast as they can in the right direction by providing the right context. Define measurable goals to hit in a way that makes it clear to everyone what they’re supposed to be doing every day.”
Cognitive Bias and Why Performance Management Is So Hard - by Osman (Ozzie) Ahmed Osman. Takeaway: A smart article that delves into the psychological factors that make or break good calls during performance reviews. Gives an overview of common biases, such as the fundamental attribution error, confirmation bias, and self-serving bias.
Cognitive Bias Cheat Sheet, Simplified - by Buster Benson. Takeaway: The four condundrums that lead to biases are too much information, not enough meaning, not enough time and resources, and not enough memory.
The Dangers of Measuring Performance - by Sam McAfee. Takeaway: offers a useful summary of how we’ve evolved our common management practices from Taylorism to agile teamwork and collaboration. Measure performance by throughput; pair people/teams to focus on one deliverable at a time; and empower teams to improve processes themselves.
Decisions: What Makes Someone Have “Impact” Anyway? - by Camille Fournier. Takeaway: Expect people to make impact within the scope of the level they are operating at, so talk about impact and scope almost interchangeably. No matter what level: Good decisions → Trust → More responsibility → Impact.
Employee Reviews – Tips to Use Them as Motivation - by kate{mats}. Takeaway: keep them more positive than negative; attach constructive suggestions to negative points; ensure feedback is accurate and continuous; set clear expectations and guidance on how to achieve different ratings; round up when in doubt, end positively.
5 Keys to Building a Human-Centric Performance Management Process - by Johnny Duncan. Takeaway: Build genuine relationships, prioritize psychological safety, check-in regularly with people before checking out, recognize and appreciate people instead of only giving them rewards, and keep the process simple.
Five Ways to Receive Negative Feedback Well - by Claire Lew. Takeaway: “How you receive feedback — especially negative feedback — sets the precedent for how welcome honest, forthcoming perspectives are in your company. Dismiss feedback on a whim or become overly defensive, and you’re not likely to hear critical feedback from that person again.”
Give Performance Reviews that Actually Inspire Employees - by Ben Wigert and Annamarie Mann. Takeaway: Traditional annual reviews don’t usually inspire people to perform better because there’s often a lack of trust, context and connection to make them useful. Better alternatives focus on being achievement-oriented, fair and accurate, and developmental. Consider calling them “progress reviews” to make them more encouraging.
How to Be a Better Manager by Remembering 5 Simple Phrases - by Lighthouse.
How to Discuss Poor Performance with an Employee - by Claire Lew. Takeaway: Provides some conversation structures to handle employees who are either aware or unaware of their poor performance.
How to Get to the Core by Asking the Right Questions - by Tom Bartel. Takeaway: Asking why, listening to someone before making assumptions and stating them, and achieving buy-in are critical to getting someone to adapt their behavior. Mistakes like suggestive questions, “you have to fix it” messaging and inflexible plans will alienate and not solve the issue.
Mental Models I Find Repeatedly Useful - by Gabriel Weinberg. A comprehensive list of mental models to make you aware of biases and assumptions.
A Note on Feedback - by Andrew Spittle. Takeaway: How to use the 3-2-1-Oh performance feedback chat, “a mix of a team member writing a self-assessment and a team lead writing a review. The conversation centers around answers to these bullet points: What are 3 things you’ve done well? What are 2 areas or skills you’d like to develop? What’s one way your team lead or Automattic itself can support you?
Performance of Performance Reviews - by Steven Sinofsky. Takeaway: “We want quantitative certainty and simplicity, but context is crucial and fluid, and qualitative. We desire fair, which is a relative term, but insist on the truth, which is absolute.”
Scaling Culture with Feedback - by Chris Savage. Takeway: Ask specific questions to see if people are living out your values.
Team Reviews by Marc Hedlund. Takeaway: “Team reviews are quick and easy to do, and every time I’ve done one, the manager and I wind up talking about important topics, pushing ourselves to promote and reward people who deserve it, and taking action where needed. It also helps me know our whole team better, and get clear signals from managers that make interactions with each person more meaningful. I highly recommend the practice.” Includes a template to get you started.
Three Axioms Engineering Managers should use for Meaningful Performance Reviews - by Oren Ellenbogen. Takeway: Before giving perf reviews think about how the employee can work anywhere, what they’re great at, improvement areas, how to help them grow, books/blog posts to recommend, and what else the company can offer to help them grow.
360-Degree Feedback - Wikipedia entry on the process for collecting feedback from a person’s reports, peers, supervisors and self.
Why I Quit Google to Work for Myself - by Michael Lynch. Takeaway: A former Google engineer describes how Google’s promotions committee setup meant that the legacy pipeline project he worked on didn’t produce the metrics required to impress committee members. “Google kept telling me that it couldn’t judge my work until it saw me complete a project. Meanwhile, I couldn’t complete any projects because Google kept interrupting them midway through and assigning me new ones. My career was being dictated by a shifting, anonymous committee who thought about me for an hour of their lives. Management decisions that I had no input into were erasing months of my career progress.”


Phalanx
问题描述 :
Today is army day, but the servicemen are busy with the phalanx for the celebration of the 60th anniversary of the PRC.
A phalanx is a matrix of size n*n, each element is a character (a~z or A~Z), standing for the military branch of the servicemen on that position.
For some special requirement it has to find out the size of the max symmetrical sub-array. And with no doubt, the Central Military Committee gave this task to ALPCs.
A symmetrical matrix is such a matrix that it is symmetrical by the “left-down to right-up” line. The element on the corresponding place should be the same. For example, here is a 3*3 symmetrical matrix:
cbx
cpb
zcc
A phalanx is a matrix of size n*n, each element is a character (a~z or A~Z), standing for the military branch of the servicemen on that position.
For some special requirement it has to find out the size of the max symmetrical sub-array. And with no doubt, the Central Military Committee gave this task to ALPCs.
A symmetrical matrix is such a matrix that it is symmetrical by the “left-down to right-up” line. The element on the corresponding place should be the same. For example, here is a 3*3 symmetrical matrix:
cbx
cpb
zcc
输入:
There are several test cases in the input file. Each case starts with an integer n (0<n<=1000), followed by n lines which has n character. There won’t be any blank spaces between characters or the end of line. The input file is ended with a 0.
输出:
There are several test cases in the input file. Each case starts with an integer n (0<n<=1000), followed by n lines which has n character. There won’t be any blank spaces between characters or the end of line. The input file is ended with a 0.
样例输入:
3 abx cyb zca 4 zaba cbab abbc cacq 0
样例输出:
3 3
题意：
给你一个n*n的矩阵，矩阵中只含有26个小写字母，求其中最大的对称矩阵的大小
当我们算到s[i][j]时，每次我们只需要将它上方的和右方的依次比较，看是否相同
注意这里不能只比较s[i-1][j]和s[i][j+1]，因为可能出现不符合的情况，如
zaba
cbab
abbc
cacq
当我们比较到红色的b的时候，如果只比较与他相邻的两个即绿色的b，就会从dp[i-1][j+1]多+1，而显然蓝色的部分不同
当i!=0&&dp[i-1][j+1]>i-a时，dp[i][j]=dp[i-1][j+1]+1
当i!=0&&dp[i-1][j+1]<i-a
(其中a为从当前位置找，找到的第一个不相等的x的位置,所以i-a就为最大的对称矩阵的长度)时，dp[i][j]=i-a;
当i==0时，dp[i][j]=1;
#include"stdio.h" #include"string.h" #define N 1001 int dp[N][N]; char s[N][N]; int main() { int n; int i,j; int a,b; int ans; while(scanf("%d",&n)!=-1&&n) { getchar(); for(i=0;i<n;i++) gets(s[i]); ans=0; for(i=0;i<n;i++) { for(j=0;j<n;j++) { if(i==0)dp[i][j]=1; else { a=i; b=j; while(s[a][j]==s[i][b]) { a--; b++; if(a<0||b>=n)break; } a=i-a; if(a>dp[i-1][j+1]) dp[i][j]=dp[i-1][j+1]+1; else dp[i][j]=a; } if(dp[i][j]>ans)ans=dp[i][j]; } } printf("%d\n",ans); } return 0; }
解题参考：http://blog.csdn.net/yangyafeiac/article/details/9445397
(adsbygoogle = window.adsbygoogle || []).push({});
你这图的XX跟下面的JB微笑图一样多，受欢迎程度自己可以判定判定，别只顾着分析别人，也分析分析自己，是不是该闭嘴了。
为什么暴力求解方法循环到sqrt(n) 就可以了呢
这排版…你都打开来看看改改
约瑟夫也用说这么长……很成熟的一个问题了，分治的方法解起来o(n)就可以了，有兴趣可以看看具体数学的第一章，关于约瑟夫问题推导出了一系列的结论，很漂亮
妈呀！这个Dijkstra模板好长OwQ！
Java真是解决大数的利器
递归实现的代码部分
14句和18句的 wt[n - 1]是不是应该改为 wt[ n ] ?
这排版…你都打开来看看改改
这个还不错


{{- partial "set-env.html" . -}}
{{- if eq .Layout "json" -}}
{{- block "json" . -}} The JSON CONTENT didn't load. :( {{- end -}}
{{- else -}}
{{- block "pagevars" . -}}{{- end -}}
{{ partial "head-comment.html" . }}
{{- partial "head.html" . -}}
{{- partial "body-top.html" . -}}
{{- block "content" . -}} The DOCS CONTENT didn't load. :( {{- end -}}
{{- partial "body-bottom.html" . -}}
{{- partial "footer.html" . -}}
{{- end -}}


Home
About
About Us
Contact Info
Frequently Asked Questions
Products
Phones
Cart
Checkout
Profile
First name:
Last name:
Email:


---
layout: game-page
redirect_from: /game/dash-eraser-dust
title: Dash Eraser Dust
year: 2006
semester: Spring
description: "Draw your way out of a sketchpad fantasy!

Armed with his trusty pencil (and his imagination), our little hero must defend himself against all the monsters he drew in class.
Featuring fast action and over thirty interesting monsters designed by six different artists."
tags: Windows Singleplayer
# tag options: "Windows", "Mac", "Linux",
# "Singleplayer", "Multiplayer",
# "Controller-Compatible", "VR",
# "Game-Jam"
project_members: {
David Hartunian: Music,
Diana Archer: "Enemy Art, Background Art",
Eric Foote: Music,
Greg Peng: "Producer, Programming, Levels, Art Direction",
Ian Lin: Enemy Art,
Joe Laquinte: Enemy Art,
Justin Lokey: Enemy Art,
Michael Menchaca: "Main Character Art, Enemy Art",
Norman Kuo: Title Screen Art
}
stage_game_path: dasheraser/
builds: {
Windows: dash-eraser-dust-1.0.win32.zip
}
thumbnail: dasheraser-1.jpg
top-img: dasheraser-1.jpg
screenshots: [
dasheraser-1.jpg,
dasheraser-2.jpg
]
# Optional
build_instructions: "Requires Direct X End User Runtime."
awards: [
GCS Gold Award
]
top-img-fit: cover
# top-img-fit options:
# "cover" - Cover the entire top area with the image, without squashing/stretching
# "fill" - Fit the FULL image into the top area, squashing/stretching as necessary
---


[§9-5] Rules. The foundation shall adopt rules in consultation with the comptroller for the purposes of administering this chapter. Such rules shall be adopted in accordance with chapter 91. [L 1977, c 112, pt of §2]


You've told us that the worker's business must make a significant capital investment to work on this engagement. These costs cannot be claimed back from the end client or an agency. Workers who risk their own money by, for example, buying assets, or paying for overheads and materials are acting more like a business in their own account and are likely to be self-employed for tax purposes.
If HMRC investigate this engagement, the worker will need to demonstrate that they had to incur significant costs for materials, equipment, vehicles or other expenses that cannot be claimed back from the end client or agency.


Configuring a Python Environment:
Minimal pain, maximal gain.
Table of Contents
1 Introduction
Fairly often, I’ve observed users of many operating systems become frustrated and angry at the often confusing ways to configure python for their operating system. This has happened to me, too. Quite a lot, actually.
There is an obligatory XKCD for this problem.
As a result, I’ve prepared this guide, which reflects my current advice for best practices for configuring sane, stable, and clean python installations and virtual environments on linux and macOS. Windows lags behind, but I’ll address it near the end.
My focus here is on configuring your local environment for developing python
packages. Following other guides, applications that should be shipped to end users
should involve none of this at all. Ideally, your users shouldn’t ever even know
you’re using python, and should have no need to know what pip
is.
Shipping libraries and packages to other developers will involve pip; see this for some reading on the subject.
TL;DR: To set up a sane development environment, eschew system python; ignore package managers; use pyenv and pipenv to create isolated and tidy development environments.
1.1 Do not ever use sudo pip
Before going further, it’s important to note that there are some things that are never a good idea, and this is very much one one of them.
Do not ever type the command sudo pip install <somepackage>
. This is guaranteed to
cause no end of havoc, because you are introducing two conflicting authorities over
python packages in your OS-level python site-packages
directory: pypi, and your
distribution’s package manager.
These two sources of truth are hardly ever in sync. Things break in really weird
ways, and undoing this is a giant pain. It’s fairly rare, but in the worst case,
you’ll wind up with package conflicts in system python so unresolvable that
reinstalling your OS is the best solution! This is especially an issue on RPM based
systems, because yum
and dnf
are written in python, but it’s true for other systems
as well.
In my observation of the #python
IRC channel, about 10 times a week someone joins the
channel and they’re very frustrated because nothing works, packages are broken,
imports fail with semi-mystical ModuleNotFound
errors, and so on. The root problem
is always of the form “Well, I tried to pip install foo
and it didn’t work, so I sudo
pip ...
, help!”
1.2 Strongly consider export PIP_REQUIRE_VIRTUALENV=true
Did you know that pip
can be configured to only work in virtualenvs? It can! The
environment variable PIP_REQUIRE_VIRTUALENV
has been around for a while, and it’s a
good idea.
If you find that you still want to use pip install --user
to install packages, that’s
okay-ish, but I strongly urge you to set this environment variable for your root user.
Then sudo pip install
will cease to work at all, which is great news.
2 System Python is best avoided.
2.1 Linux
With the exception of specialty linux distributions like tinycore or alpine linux, a version of python is installed by default in linux. It’s normally a slightly old version of Python 2.7, it’s normally an important part of the overall OS, it’s normally used to run daemons and other system services. Some distros, like modern flavors of Ubuntu, also ship with a version of python3 as well; this is also normally older. For now, python3 is less important to the overall health of your OS, but this is changing. RHEL is going python3, ArchLinux already is, and others are beginning to follow suit.
Legacy systems, or older releases of slow-moving distributions like CentOS and Debian, may still ship Python 2.6 as the system python. This has not received a security patch since 2013 and is now so deprecated that you generally can’t use it for web related programming because it cannot handle modern TLS.
In my experience, this situation arises fairly often for users of large grid
computers or high performance computing clusters. In these situations, installing
your own python into $HOME
is basically the only solution—as I get into below, I
think this is the right answer more generally anyway.
2.2 macOS
On macOS, a version of 2.7 is shipped as the “framework” python in
/System/Library/Frameworks/
and symlinked to /usr/bin
. Frameworks are strange and
best avoided—and even if that was not the case, the most modern version of macOS
ships with 2.7.10, which is 4 revs out of date. A major issue with system python on
macOS is how it handles SSL—the default is to support TLS<1.2, which is a gaping
security hole.
2.3 Windows
Windows doesn’t have a system python. For the purposes of setting up a development environment on a given system, this is probably a feature.
2.4 General thoughts
OS aside, there are good reasons to avoid using system python, particularly for scientific computing.
- There are no advantages, only downsides to using the system python.
It doesn’t provide any functionality that is special, yet it remains the python which gets called by the OS for system tasks. These are required processes that are best left alone. It’s best to consign your system python to performing only those tasks.
- System Python is virtually guaranteed to be out of date.
Because it’s provided by a second or third (or fourth) party vendor, there’s a disconnect between the shipping schedule of python.org and pypi and the various package manager repos. There are very nice features in new versions of python that you will want to use that an outdated python can’t give you, and there are security updates that you’ll always want.
- Package managers are the only way to install “global” packages into system python.
Assuming your OS even has one, that is. MacOS does not have one, though third party package managers like homebrew make life much better. Still, brew lags pypi and python.org for releases: Python 3.6 was only recently added, but has been available on python.org since December 2016. On Linux, distribution package managers are sometimes flatly wrong about package names, and usually provide packages which are out of date as well, especially for fast-moving libraries.
And, since using system packages means you’re stuck with the exact version provided
by the OS, upgrading the OS means upgrading those libraries, which may require
changes to your code. It’s not terribly uncommon to apt install dist-upgrade
and
then discover that you now have a bunch of refactoring to do.
- System python is Python2 for the forseeable future.
For legacy support reasons, primarily, Python 3 is not going to be the default python
for a long time. By default, python
should resolve to python2
(see PEP 394). However,
Python 2 is going to EOL in one year and seven months, and there’s no reason to start
a new project in python2.
Therefore, it will generally always be the case that you’ll want a modern python3 on whatever operating system you’re using.
- You cannot rely on the OS for multi-python testing.
If you’re interested in testing your code on many versions of python at the same time, you cannot rely on OS—and version-specific Pythons as reliable tests. Just because your tests pass on a mac running python 3.6 does not mean they’ll pass on an ubuntu box running 3.4; Python 2.6 and 2.7 have breaking API changes between them on all OSes, so ideally you’d have a test suite that runs your code on every python version you care about supporting.
3 Pyenv
Pyenv is a macOS and Linux project that solves all of the issues with system python which are outlined above.
It does this by ignoring system python, completely. Pyenv
makes it reasonably hard to
accidentally use system python as a normal user account, and gives you the ability to
install and quickly switch between as many versions of python as you might care to
use. As of 2018, 228 versions of Python are available. On any given day, I have
about 5 installed on my workstation.
From the project home page,
pyenv lets you easily switch between multiple versions of Python. It’s simple, unobtrusive, and follows the UNIX tradition of single-purpose tools that do one thing well.
pyenv does…
- Let you change the global Python version on a per-user basis.
- Provide support for per-project Python versions.
- Allow you to override the Python version with an environment variable.
- Search commands from multiple versions of Python at a time. This may be helpful to test across Python versions with tox.
In contrast with pythonbrew and pythonz, pyenv does not…
- Depend on Python itself. pyenv was made from pure shell scripts. There is no bootstrap problem of Python.
- Need to be loaded into your shell. Instead, pyenv’s shim approach works by adding a directory to your $PATH.
3.1 Installing Pyenv
The easiest and best way to install pyenv is to use the pyenv-installer
project,
which is on github: https://github.com/pyenv/pyenv-installer. This will install
pyenv itself in your user home directory. You can also brew install pyenv
on macOS,
if you prefer, which installs pyenv to /usr/local/
.
To install, run this command:
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
When complete, follow the instructions about adding the following lines to your shell
rc
file (.bashrc
, .bash_profile
, .zshrc
, etc.):
export PATH="~/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
Then start a new shell session. You can test to see if the install has been done correctly by issuing the command
pyenv versions
and the output should simply be
* system
which means that you have one python version installed, and it’s the system python.
3.1.1 Uninstalling pyenv
In case you don’t like pyenv, uninstallation is trivial.
- Remove the three lines above from your shell
rc
file rm -rf $HOME/.pyenv
- Restart your shell.
3.2 Install prerequisite libraries for building python.
By default, pyenv compiles versions of python from source for you. Some binaries are
available (primarily for anaconda
and miniconda
), but in general pyenv
downloads a
source tarball and proceeds from there.
You’ll need to have some additional libraries installed in order for this to work. Normally, these are:
- bzip2 headers
- sqlite3 headers
- openssl headers
- readline6 headers
and some others.
Pyenv itself maintains a nice wiki with solutions to resolve common build dependency issues. On ubuntu,
sudo apt-get update && \ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \ libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \ xz-utils tk-dev
should do it. Homebrew provides similar packages under slightly different names.
3.3 Installing a python version
With headers installed, compilation is straightforward and managed entirely by pyenv.
To see the list of python versions, use
pyenv install --list
and scroll through the results.
Then to install, say, python 3.6.5, simply issue the command
pyenv install 3.6.5
and wait for the compilation to complete.
By default, installed interpreters are installed in
$PYENV_ROOT/versions/<version_string>
.
3.4 Uninstalling a python version
Uninstallation is pretty trivial:
pyenv uninstall 3.6.5
3.5 Select one or more python interpreters
Just because pyenv has installed one or more python interpreters does not mean that these versions are all visible from a command prompt.
At any time, you can run
pyenv version
to see which python version the current shell session is using.
To see all versions installed, run
pyenv versions
The current active version will be flagged with a *
and a comment next to it will
tell you why it’s the active version.
pyenv
can maintain global, per-project, and per-shell-session mappings to specific
installed python interpreters.
3.5.1 Global
To set a


{% extends "catalogueapp/admin/base.html" %} {% block htmltitle %}Add - {% endblock %} {% block content %}
Please enter a URL of the service you wish to add - like https://www.aliss.org/services/balerno-ramblers-group-0/


Advertisements are short but powerful. 2% of Blue Steel ads are donated annually. Advertising is everywhere around you. Look at the billboards at the bus stop when you get to work or get off work. And look for YouTube ads. Collaboration with Ice Bear is coming soon.
Organic beer, brewed in the Belgian style with coriander and orange rind. Pours golden and clouds up when wheat sediments from the bottom of the bottle are decanted. Aromas and flavors of apricots and citrus balanced with a touch of bitterness.
In combination with barley, wheat creates a silky, creamy texture and a big, beautiful long-lasting head on your beer. You’ll often find oats in wheat beer. Oats are great at creating more of a rich texture in beer.


Add small overlay content, like those found in iOS, to any element for housing secondary information.


Download
Version (loading)
— (loading) (change
log)
Download .zip
Download .tgz
Plugins
-
Google
Maps
-
Base activity which extends from
MapActivity
.
Sample Applications
- (loading)
Third-Party Tools
-
RoboGuice-Sherlock
— Roberto Tyley
- Base activities and base fragments which
allow for easy use of RoboGuice and ActionBarSherlock together.
-
Action
Bar Style Generator — Jeff Gilfelt
- Allows you to easily create a simple,
attractive and seamless custom action bar style for your Android
application. It will generate all necessary nine patch assets plus
associated XML drawables and styles which you can copy straight into
your project.


File Class
The File class offers a set of methods to working with files & directories. This can be done through
some helper methods or through a more advanced object oriented method where all files and directories are
wrapped in objects.
Usage
The File class's basic usage is through its helper methods which are listed below.
exists($path, $area = null)
Checks if a file exists. If $path points to a symlink, the symlinks are resolved to make sure whatever it points to is a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file to check |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean true if the file in $path exists, false if not |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when an area is used and there is an extension violation.
|
| Example |
$exists = File::exists(DOCROOT.'/test.txt');
|
create($basepath, $name, $contents = null, $area = null)
Create a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $basepath |
required |
Location to create the new file in |
| $name |
required |
Filename for the new file |
| $contents |
null |
What to put into the new file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
true |
| Throws |
FileAccessException when the file already exists.
InvalidPathException when the basepath in not valid or not writable.
|
| Example |
File::create(DOCROOT, 'test.txt', 'Contents for file.');
|
create_dir($basepath, $name, $chmod = 0777, $area = null)
Create a directory.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $basepath |
required |
Location to create the new directory in |
| $name |
required |
Name for the new directory |
| $chmod |
null |
Rights for the new directory |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
bool - the output of the mkdir() PHP function |
| Throws |
InvalidPathException when the basepath does not exist or is not writable.
FileAccessException when the basepath is not writable.
|
| Example |
File::create_dir(DOCROOT, 'test', 0755);
|
read($path, $as_string = false, $area = null)
Reads a file and returns it ($as_string == true) or adds it to the output ($as_string == false).
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file to read |
| $as_string |
false |
Makes it use readfile() on false or file_get_contents() on true |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
int|string - returns the number of bytes when $as_string was set to false or the file's
contents as a string when it was set to true.
|
| Throws |
InvalidPathException when the file does not exist. |
| Example |
// Returns 'Contents for file.' if you created the file in the example for File::create()
$file_content = File::read(DOCROOT.'test.txt', true);
|
read_dir($path, $depth = 0, $filter = null, $area = null)
Reads directory contents into an array.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the directory to read |
| $depth |
0 |
How deep the subdirectories are recurred: 0 for unlimited, 1 for only the current
directory or specific number. |
| $filter |
null |
A filter for which files to read: array() for all or null for
all but hidden. |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
array - a natural-case sorted array with subdirectories on top. Directories have a string key
with array value (or false when not read because of $depth limitation) and files are int indexed
with filename as value. All directories are suffixed with a directory separator. |
| Throws |
InvalidPathException when the path not a directory.
FileAccessException when the path is not readable.
|
| Example |
// Read a directory
$contents = File::read_dir(DOCROOT);
// Read with a limited dept
$contents = File::read_dir(DOCROOT, 2);
// Read with custom rules
$contents = File::read_dir(DOCROOT, 0, array(
'!^\.', // no hidden files/dirs
'!^private' => 'dir', // no private dirs
'\.png$' => 'file', // only get png's
'\.css$' => 'file', // or css files
'!^_', // exclude everything that starts with an underscore.
));
/**
* As you can see above, you can make
* rules directory or file specific by
* adding "=> 'file'" or "=> 'dir'"
* behind the rule.
*/
|
update($basepath, $name, $contents = null, $area = null)
Updates a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $basepath |
required |
Location of the file to update |
| $name |
required |
Filename for the file. If it does not exist, it will be created |
| $contents |
null |
What to put into the file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
true |
| Throws |
InvalidPathException when the basepath not a directory or is not writable.
FileAccessException when there is no write access.
|
| Example |
File::update(DOCROOT, 'test.txt', 'New contents for file.');
|
append($basepath, $name, $contents = null, $area = null)
Appends to an existing file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $basepath |
required |
Location of the file to append to |
| $name |
required |
Filename for the file. This file has to exist |
| $contents |
null |
What to add to the file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
true |
| Throws |
InvalidPathException when the basepath not a directory or is not writable.
FileAccessException when the file does not exist.
|
| Example |
File::append(DOCROOT, 'test.txt', 'Additional contents for file.');
|
rename($path, $new_path, $source_area = null, $target_area = null)
Rename or move a directory or file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file or directory to rename |
| $new_path |
required |
New name of the file or directory |
| $source_area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
| $target_area |
null |
Optional Area object to use if $source_area does not contain $new_path, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean result of rename() |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the filetype is not allowed.
|
| Example |
// rename 'test.txt' to 'newname.txt', and move it to a sub-directory
File::rename(DOCROOT.'test.txt', DOCROOT.'folder/newname.txt');
// rename using a single area
File::rename(DOCROOT.'one.jpg', DOCROOT.'final.jpg', 'docroot');
// move and rename between two restrictive areas
File::rename(APPPATH.'tmp/file.jpg', DOCROOT.'folder/image.jpg', 'tmp', 'public');
|
rename_dir($path, $new_path, $source_area = null, $target_area = null)
Alias for File::rename
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file or directory to rename |
| $new_path |
required |
New name of the file or directory |
| $source_area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
| $target_area |
null |
Optional Area object to use if $source_area does not contain $new_path, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean result of rename() |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the filetype is not allowed.
|
| Example |
File::rename(DOCROOT.'/dirname', DOCROOT.'/newdirname');
|
copy($path, $new_path, $area = null, $source_area = null, $target_area = null)
Copies a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file to copy |
| $new_path |
required |
Full path, including filename, to copy to |
| $source_area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
| $target_area |
null |
Optional Area object to use if $source_area does not contain $new_path, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean result of copy() |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the filetype is not allowed.
InvalidPathException when the source path is not a file.
FileAccessException when the destination file already exists.
|
| Example |
// copy the file 'test.txt' from the docroot to a sub directory
File::copy(DOCROOT.'test.txt', DOCROOT.'folder/test.txt');
// copy using a single area
File::copy(DOCROOT.'one.jpg', DOCROOT.'img/one.jpg', 'public');
// copy between two restrictive areas
File::copy(APPPATH.'tmp/1.jpg', DOCROOT.'folder/1.jpg', 'tmp', 'public');
|
copy_dir($path, $new_path, $area = null, $source_area = null, $target_area = null)
Copies a directory.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the directory to copy |
| $new_path |
required |
Path to copy to |
| $source_area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
| $target_area |
null |
Optional Area object to use if $source_area does not contain $new_path, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
null |
| Throws |
OutsideAreaException when a path not inside the file area.
InvalidPathException when the source path is not a directory.
FileAccessException when the destination directory already exists.
|
| Example |
File::copy_dir(DOCROOT.'/test', DOCROOT.'/newname');
|
delete($path, $area = null)
Deletes a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file to delete |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean result of unlink() |
| Throws |
OutsideAreaException when a path not inside the file area.
InvalidPathException when the source path is not a file.
|
| Example |
File::delete(DOCROOT.'/test.txt');
|
delete_dir($path, $recursive = true, $delete_top = true, $area = null)
Deletes a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the directory to delete |
| $recursive |
true |
Whether to also delete contents of subdirectories |
| $delete_top |
true |
whether to delete the parent dir itself when empty |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean result of unlink() or true when not deleting content of subdirectories |
| Throws |
OutsideAreaException when a path not inside the file area.
InvalidPathException when the source path is not a directory.
FileAccessException when something went wrong during the delete process.
|
| Example |
File::delete_dir(DOCROOT.'/my_dir');
|
open_file($path, $lock = true, $area = null)
Opens a file and optionally locks it.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Location of the file to open |
| $lock |
true |
If true, lock exclusively. If false, don't lock. You can also pass an flock() value explicitly. |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
resource, the file resource |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file could not be locked.
FileAccessException when an invalid $lock value is passed.
|
| Example |
$resource = File::open_file(DOCROOT.'/my_dir/text.txt');
|
Please note that the $lock value is ignored if file locking is disabled in the base config (which is the default!).
close_file($resource, $area = null)
Closes a file and unlocks it.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $resource |
required |
An open file resource |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
boolean if a lock is used. |
| Example |
$resource = File::open_file(DOCROOT.'/my_dir/text.txt');
// Do something with the resource
File::close_file($resource);
|
get($path, $config = array(), $area = null)
Fetches a file handler for the given file. Read more about handlers.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file or directory to be wrapped in a handler |
| $config |
array() |
optional config array |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
Returns a new file handler object. |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file extension is not allowed.
|
| Example |
$handler = File::get(DOCROOT.'/my_dir/text.txt');
|
get_url($path, $config = array(), $area = null)
Retrieves the public url to a file. A url must be set in the base config or in the area config of the used area.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $config |
array() |
optional config array |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
The public url for the file. |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file extension is not allowed.
|
| Example |
$url = File::get_url(DOCROOT.'/my_dir/text.txt');
// Returns something like: http://mydomain.com/mydir/text.txt
|
get_permissions($path, $area = null)
Retrieves the octal permissions for a file or directory.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
The octal file permissions |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file extension is not allowed.
|
| Example |
$permissions = File::get_permissions(DOCROOT.'/my_dir/text.txt');
// Returns "0755"
|
get_time($path, $type = 'modified', $area = null)
Retrieves the created or modified time of a file or directory.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $type |
'modified' |
Type of time to retrieve. Must be modified or created |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
The file created/modified unix timestamp |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file extension is not allowed.
|
| Example |
$permissions = File::get_time(DOCROOT.'/my_dir/text.txt', 'created');
|
get_size($path, $area = null)
Retrieves size in bytes for a file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
The file size in bytes. |
| Throws |
OutsideAreaException when a path not inside the file area.
FileAccessException when the file extension is not allowed.
InvalidPathException when the file is not found.
|
| Example |
$filesize = File::get_size(DOCROOT.'/my_dir/text.txt');
|
file_info($path, $area = null)
Retrieves an array of information about the specified file.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
|
| Returns |
An array with file information items. The array will contain path, filename and extension information,
the file size and permissions, the creation and last modified timestamps, the detected mime-type and
the file's character set.
|
| Throws |
InvalidPathException when the file is not found.
InvalidArgumentException when the file info could be determined.
|
| Example |
$filesize = File::file_info(DOCROOT.'/my_dir/text.txt');
|
download($path, $name = null, $mime = null, $area = null, $delete = false, $disposition = 'attachment')
Outputs a file, inline or as a downloaded attachment.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $path |
required |
Path to the file |
| $name |
null |
Override the file's default filename |
| $mime |
null |
Override the file's default mimetype |
| $area |
null |
Area object to use, null for base_config in config file (see advanced
usage for more information) |
| $delete |
false |
Whether or not to delete the file after download |
| $disposition |
'attachment' |
whether to download or output inline. Accepts 'attachment' or 'inline', and defaults to 'attachment'. |
|
| Returns |
n/a - this method exits after initiating the download. |
| Throws |
InvalidPathException when the file does not exist.
InvalidArgumentException if no file info could be retrieved for the file.
FileAccessException when the file could not be opened for read.
|
| Example |
// download file
File::download(DOCROOT.'/my_dir/text.txt', 'newfile.txt');
// output an inline image, for use as an <img> tag source
File::download(DOCROOT.'/img/image.jpg', null, 'image/jpeg', null, false, 'inline');
|
Note that when you call this method, it doesn't immediately download the file. It will schedule a shutdown event
in which the file is downloaded, and then terminates the script. This ensures that all FuelPHP shutdown functions,
like updating sessions, will execute as normal.


Let me show you my world!
Never give up on what you really want to do. The person with big dreams is more powerful than one with all the facts.
My name is Marcin Kwolek and I'm 28 years old. I'm living in Pruszcz Gdański area where I'm currently studying and working. My personal experience used to be so far from programming, but I always thought about to start my carrier in this profession. In september 2017 I've decided to make a step forward and I've started my programming education. In the first place I learned HTML and CSS, naturally my next step was JavaScript and JQuery, at this moment I started to discover Angular 5. I would like to advise that I have number of personal ambitions that I want to constantly fulfill in my professional carrier, such as improving my HTML, CSS, SASS, Photoshop, RWD, JS and JQUERY programming skills. I am a organised team player with the ability to communicate effectively and efficiently.
My first choice of studying was transport and logistic, somehow I thought that was interesting for me, but It wasn't. For couple of years I've tried to find my place but always something was wrong, then my friend suggested me to try my luck in programming and that's how i start my experience with it. I've decided to sign up for college - WSB Gdańsk at Programming. Because as you know, it is never too late to learn new skills. In the future I would like to improve my skills so to stay a full-stack developer.
My hobby is music. I listen to music all the time when I am at home, except when I am in the living room and the television is on. It is hard for me to imagine life without music. In my opinion work with music is much more enjoyable. I often watch sports programmes and I'm especially keen on football and tennis. I do not have my favourite team or player I just like watching those disciplines. I also enjoy playing on PS4, especially FIFA with my friends. We have so much fun with that. My hobbies are not very original but I think they are typical of my generation. My biggest passion is traveling, I don't have a lot of expierience with travelling abroad but I want to change it and visit some countries all over the world. My dream is to see Mount Everest. I know that one day I will make my dream come true.


I’ve also posted this over at the official VirtueDesktops project site.
I’ve been sitting on a fairly big decision (for me) for the last few weeks. The writing has been on the wall for VirtueDesktops since last year’s WWDC, but I had intended to release a nice, stable version for 10.4 users before I stopped work on the project.
I’ve decided not to finish that version - http://forums.cocoaforge.com/viewtopic.php?t=12392
Needless to say, it wasn’t easy to make this call - I’ve loved working on Virtue, and I think it has some features that Spaces won’t match. The sad fact is, that since June last year, it has all been effort poured into a product that has no future.
Update: Wow! I hadn’t realised just how much this little app meant to people! Thankyou all for your kind e-mails, IMs and posts of thanks - I appreciate it.


User ID:
Username:
Password:
Full Name:
Email:
Time:
User's Likes:
Post ID:
Title:
Body:
YT Link:
Post Likes:


Constructor new HtmlBehaviorResource(): HtmlBehaviorResource Creates an instance of HtmlBehaviorResource. Methods addChildBinding compile create initialize load register convention


Preparation time
30 mins to 1 hour
Cooking time
30 mins to 1 hour
Serves
Serves 6
Dietary
Preheat the oven and a baking sheet to 180C/356/Gas 4.
Divide the pastry into two halves, one slightly bigger than the other.  Sprinkle some sugar over the surface, then throw in the gooseberries.
Sprinkle over the potato flour, the rest of the sugar and the elderflower cordial, then dot with the butter.

Cut a cross in the middle through which the steam can escape, brush with beaten egg, then scatter a bit of demerara sugar over the surface.
Place on the hot baking sheet and cook for about 25 minutes. Turn the heat down a bit and continue to cook for another 20-25 minutes until golden and bubbling.
Cool for at least 15 minutes, then serve with clotted Jersey cream, or homemade custard.


- About
- Jeff
- {
Just the facts...
- I am Jeff. I was born in May, 1982 in Seattle, WA.
- My favorite food is pizza, and my favorite drink is beer.
- I have brown hair, brown eyes. My favorite color is not brown.
- Scout dog has brown hair too, she thinks it's grey.
- My favorite way to spell favorite is favourite.
Favorite movies
- Interstellar
- The Man Who Would Be King
- The Shining
- Star Wars
- Pulp Fiction
- Dr. Strangelove
- Silence of the Lambs
- The Big Lebowski
- 2001: A Space Odyssey
- The Matrix
}


| Dates | Schools Attended |
|---|---|
| 2018-present | University College Cork, College Road, Cork. |
| 2012-2018 | St. Mary's Secondary School, Mallow, Co. Cork. |
| 2004-2012 | Scoil Eoin Naofa, Ballyclough, Mallow, Co. Cork. |
| Subject | Level | Result |
|---|---|---|
| English | Higher | H4 |
| Maths | Higher | H3 |
| Accounting | Higher | H1 |
| Economics | Higher | H2 |
| Music | Higher | H2 |
| Business | Higher | H2 |
| Links Modules | Common | Distinction |
I am now a first year student studying BIS in University College Cork.
I am studying modules in both the areas of business and computers.
I hope to graduate in 2022.


Back To Codark
Allowance Saver
Allowance
Goals
Add
Take
Delete All Logs
Reset
Date
Reason | Amount
Set Goal
Name
NULL


An object to work with custom events.
Object
This object is used internally to provide event functionality for all widgets. You can apply it to your custom widgets in the
following way.
This will add to your object following functions:
- on(event, handler)
- off(event, [handler])
- trigger(eventData)
That you can use it to add event listeners and trigger events. See Events for additional information.


Test run details
Passed : 24
Failed : 0
Skipped : 0
All Results
/Users/harrison/Desktop/OpenEvent/OpenEvent.Integration.Tests/bin/Debug/net5.0/OpenEvent.Integration.Tests.dll
✔ Should_Add_And_Remove_Bank14s 307ms
✔ Should_Add_Bank12s 995ms
✔ Should_Cancel_Event11s 374ms
✔ Should_Not_Allow11s 82ms
✔ Should_Create_Event11s 558ms
✔ Should_Get_All_Users_Events10s 876ms
✔ Should_Get_Event_For_Host10s 901ms
✔ Should_Get_Event_For_Pubic11s 316ms
✔ Should_Not_Allow_Non_Owner10s 378ms
✔ Should_Update_Event10s 670ms
✔ Should_Add_And_Remove_Payment_Method11s 839ms
✔ Should_Flow_Transaction16s 249ms
✔ Should_Create_User11s 937ms
✔ Should_Check_Email_Exists10s 792ms
✔ Should_Check_Phone_Exists10s 553ms
✔ Should_Check_Username_Exists10s 73ms
✔ Should_Get_User_For_Account_Page11s 563ms
✔ Should_Update_Address11s 80ms
✔ Should_Update_Avatar10s 876ms
✔ Should_Update_Theme_Pref11s 175ms
✔ Should_Update_User_Name11s 260ms
Informational messages
NUnit Adapter <IP_ADDRESS>: Test execution started
Running all tests in /Users/harrison/Desktop/OpenEvent/OpenEvent.Integration.Tests/bin/Debug/net5.0/OpenEvent.Integration.Tests.dll
NUnit3TestExecutor converted 24 of 24 NUnit test cases
NUnit Adapter <IP_ADDRESS>: Test execution complete


Health Audit Group is a leading international provider of quality management systems
auditing and training services in the health and disability sector.
Select from the country navigator below to be redirected to your local markets website.
Australia
New Zealand
Contact Us
Success! Your message has been sent to us.
Error! There was an error sending your message.
You can use this form to send us general enquries or request a quote.


Thanks to Adrian I have just done another personality test.
I already read a book on personality reading recently and it turns out there that my type is ENFP. I have to say that it fits quite well. There are still some things missing but in general it is really good.
The new test can be found here. The author points out that it is just something to try out but use with a grain of salt. You cannot really make out a type that easily. There were some answeres where I just did not totally know what I should answer to fully describe my thoughts and feelings to this answer, but this is always the problem with questionaires. Anyway. Read on for my result and explenations. I scored as a Two by the way.
<!– more –>

I scored as a Two.

Below is a breakdown of your scores, ordered from highest to lowest. To quote them: If you are not the type you scored highest as, you might be one of the types you scored next highest as. The highest possible score is 28, and the lowest is 0. On your right is the breakdown of how many questions you answered in favor of each triad group.

The interesting thing is that I might not agree with some of the things in the right table, but I do agree with the type explenation more or less. Interesting to say the least.

Type	Score

Two	13

Seven	12

Nine	11

Three	10

Five	9

One	8

Eight	8

Four	7

Six	6

Preferred Intelligence Triad		Hierarchical Styles Triad

Behavioral - 891	2		Control - 258	3

Emotional - 234	3		Harmony - 369	2

Mental - 567	2		Ideals - 147	2

Coping Styles Triad		Social Styles Triad

Positive - 792	5		Assertive - 378	3

Competency - 135	2		Compliant - 126	2

Reactive - 468	0		Withdrawn - 459	2

Now on for some explenations. First of all. Regard all this with skepticism if you do it. I still do and partly do not agree, but it is interesting to say the least.  By making themselves indispensible, Twos feel that they can assure themselves a place in others’ lives. They also use their emotional intelligence to keep a positive outlook on life, which helps to spare them from the pain they would otherwise feel by being so in touch with other people’s needs and emotions. Without keeping a positive outlook, Twos would sink into the pain of those they feel compassion for. At their best, Twos provide great service to those in need. Mother Theresa is a good example.

Meet Mother Theresa 2 ;) Well not quite I think. :)

A list of all the types can be seen here. I really think you should read that as it is really interesting and I have to say that my type is probably a mix of the ones with the higher marks.


Paul Iannello
CEO
Paul Iannello has a long history in the field of Quality Control data collection. As a graduate Mechanical Engineer from the Rochester Institute of Technology, he started his career in Quality Control in 1986 with Quality Measurement Systems in Rochester, NY. After designing and building his own data collector called the SPC Sentry, his company was purchased by Verax Systems where he became their VP of Sales & Marketing, and board member. After four years of doubling sales, and a joint venture he structured with Dataputer, Verax was purchased by Moore Data Systems. Paul then became the Midwest Regional Sales Manager for GageTalker. With so many years in the data collection industry, Paul had the knowledge to deliver what the industry demanded and needed. Torq-Comm has been the byproduct of all this.
Rick Iannello
President & CTO
Rick has a BS in Mechanical Engineering from the Rochester Institute of Technology and has been involved in New Product Design and Development for over 33 years. He leads an international multi-discipline product development engineering team with expertise in electro-mechanical systems. He has introduced more than a dozen new and innovative products into industrial and commercial markets around the world and holds as many patents. Mr. Iannello’s engineering strengths are complimented by his manufacturing experience with International Contract Manufacturers to leverage their skills and expertise in reducing the product cost and delivery time.


Hello my name is Neil,
I'm at Bellevue College to get a BAS IST in Application Dev. I have previously taken a Web Development course through an online college but since it was over 5 years ago, Bellevue College required I take the course again. In Programming, I have some knowledge in Python, I took a Professional beginner course through UW during the Spring. I'm hoping to continue learning Python as I found the language much easier to learn/use than Java. I've also worked extensively in Networking/TCPIP in previous careers. I'm hoping this class furthers my knowledge in HTML and CSS.
I enjoy traveling and hiking with my wife. I'm an avid reader, especially historical novels. I love playing baseball. I'm in an adult's league, the PSSBL, that plays 22 games throughout the summer.


---
title: September Update
author: Chris
short: Big big month ahead!
category: plus
comments: true
published: true
image: /images/frances.jpg
---
Quick updates! I'm pretty sure that I will not be able to put together a playlist for September, and quite possibly October. With our first little girl on the way any day now, I may not have time for anything for the next few months lol. But, there is a little something I'd like to say before I end up taking a probable hiatus from posting. Please read ahead.
Frances will probably hate me for posting that picture of her but it's one of my most favorite pictures of her. I think she's just beautiful in it and it captures her fun and goofy self too. Over the past nine months, I've watched her carry our little growing baby girl with so much grace. Other fathers and husbands ask me about how bad things get during the pregnancy but everytime I stop to think about it, it honestly hasn't been that bad at all. I can't imagine what it's like to carry a baby to term, but I'm glad that I get to experience it with Frances.
To say that it's been a difficult couple of weeks would be a big understatement; but, through the grace of God, things seem to have worked out pretty well so far. A few weeks ago I wrote about re-prioritizing my life and I had no clue that it would be put to the test so soon and so harshly, but it was. I won't go into the details, but suffice it to say that I think after everything has been said and done, Frances and I, are much stronger for the struggle, as is everyone else involved. To say that I love my family, immediate and extended, would also be a big understatement. God's plans are mysterious indeed, but they are always good in the end.
I'll do my best to keep this from turning into a baby blog once our little girl arrives hahaha. No promises though. I still hope to write and record some content with Tim whenever we're able. Hopefully as things settle down we'll be able to sit down and talk more about life and other nerdy things. Until then though, thanks for all of the love and support everyone!
Thanks for reading and as always, stay NRDy!


Welcome to Automatak DNP3 Help’s documentation!
There are currently two release branches:
We won’t be adding new features, but we will fix bugs if they are deemed critical.
This is just a test, in the future, i’ll be formatting the rest of the files to make them fit in the Sphinx format. For each bullet in the contents menu, a new folder is built and inside the folder we add the .rst files.
There are many ways you can contribute:
Join the [Google Group](https://groups.google.com/forum/#!forum/automatak-dnp3) and express your interest!
nice reference: https://pythonhosted.org/an_example_pypi_project/sphinx.html


Chris Evans dishes on Captain America cameo in The Falcon And The Winter Soldier
Make up your mind, Chris Evans – is Captain America going to make an appearance in Disney+’s The Falcon And The Winter Soldier or not?
The actor’s famous Marvel Cinematic Universe character took what we assumed to be his final bow in April’s Endgame. However it hasn’t taken long for punters to predict he’ll make some sort of comeback in the series spinoff about Sam Wilson (Anthony Mackie) and Bucky Barnes (Sebastian Stan).
Speaking about the potential of a return of Cap AKA Steve Rogers at a premiere for his latest film Knives Out, Chris was flip flopping all over the place.
‘No, probably not,’ he mused, sombrely, at first to Entertainment Tonight.
While it makes sense he wouldn’t be keen to step back into the cowl seeing as his story was wrapped up in a neat little package, and Sam now has the famous shield, he hadn’t closed the door entirely.
He did admit that it would be a ‘shame’ to heave him back into the story just for the sake of it, though – which hampers those dreams.
Advertisement Advertisement
‘It was really tough. There was a million ways that whole tenure with Marvel could have gone wrong, and it didn’t!’ Chris continued. ‘So, to stick the landing so well, it would be a shame to revisit.’
But (see, we told you he was flip flopping): ‘Unless there was something very unique that we felt the need to reveal.
He added: ‘For now, it feels like, let’s just be content with how well it ended.’
Hmm, okay, you’re not saying a lot but you’re also saying everything we need to hear, Chris.
Disney+ has been a massive success for Marvel with its films and spinoffs finding a home on the streaming platform that recently launched.
It launched in the US on the 12 November but will eventually land in the UK – as well as France, Germany, Spain and Italy – on 31 March 2020.
Got a showbiz story?
If you've got a story, video or pictures get in touch with the Metro.co.uk Entertainment team by emailing us<EMAIL_ADDRESS>calling 020 3615 2145 or by visiting our Submit Stuff page - we'd love to hear from you.


@()
To see a list of customers (3 per page), you can do a GET:
http GET localhost:9000/v1/customers/list?page=1
To see a particular customer's info, you can do a GET:
http GET localhost:9000/v1/customers/:id
To create new customers, do a POST:
http POST localhost:9000/v1/customers name="name" location="location"
To update a customer's info, do a PUT:
http PUT localhost:9000/v1/customers name="new name" location="location"
To delete a customer's info, do a DELETE:
http DELETE localhost:9000/v1/customers/:id


The popup widget can be used for various types of popups. From a small tooltip popup to a large photo lightbox. Jump to section
To create a popup, add the data-role="popup"
attribute to a div with the popup contents. Then create a link with the href
set to the id
of the popup div, and add the attribute data-rel="popup"
to tell the framework to open the popup when the link is tapped. A popup div has to be nested inside the same page as the link.
This is a completely basic popup, no options set.
A tooltip can be created by adding a theme swatch and padding via the ui-content
class a basic popup.
A paragraph with a tooltip. Learn more
Here is a tiny popup being used like a tooltip. The text will wrap to multiple lines as needed.
A lightbox for displaying images can be created easily by placing an image in a popup. In this example, a close button is added to the markup by adding a link. The data-overlay-theme="a"
attribute adds a dark backdrop behind the photos. For advanced photo techniques, see scaling images in popups.
A menu can be created by adding a listview inside a popup.
A menu can be created by placing listviews into an accordion inside a popup.
A menu can be created by adding a listview inside a popup.
Standard dialog markup can be placed into a popup. To create a modal style dialog, add the data-dismissible="false"
attribute to the popup to prevent the click out to close behavior so people need to interact with popup buttons to close it.
For popups with formatted text, padding is needed. The ui-content
class to the popup container to adds the standard 15px of padding. When padding is added, we apply a few style rules to negate the top margin for the first heading or paragraph in the popup and do the same for the last element's bottom margin.
This is a popup with the ui-content
class added to the popup container.
By default popups can be closed either by clicking outside the popup widget or by pressing the Esc
key. To prevent this, the data-dismissible="false"
attribute can be added to the popup. To add an explicit close button to a popup, add a link with the role of button into the popup container with a data-rel="back"
attribute and position via a class
I have a close button at the top right corner with simple HTML markup.
I have a close button at the top left corner with simple HTML markup.
I have the data-dismissible
attribute set to false
. I'm not closeable by clicking outside of me.
By default, popups open centered vertically and horizontally over the thing you clicked (the origin) which is good for popups used as tooltips or menus. If popup should appear centered within the window instead of over the origin, add the data-position-to
attribute to the link and specify a value of window
. It's also possible to specify any valid selector as the value of position-to
in addition to origin
and window
.
I am positioned to the window.
I am positioned over the origin.
I am positioned over the header for this section via selector. If the header isn't scrolled into view, collision detection will place the popup so it's in view.
By default, popups have no transition to make them open as quickly as possible. To set the transition used for a popup, add the data-transition
attribute to the link that references the popup. The reverse transition will be used when closing the popup. For performance reasons on mobile devices, we recommend using simpler transitions like pop, fade or none for smooth and fast popup animations.
The popup has two theme-related options: data-theme
and data-overlay-theme
. The data-theme
option refers to the theme of the popup itself, whereas data-overlay-theme
controls the semi-opaque layer behind the popup. The theme is inherited from the page; specify data-theme="none"
for a popup with a transparent background.
I have data-theme="a"
set on me
I have a data-overlay-theme="a"
set on me
I have data-theme="e"
and data-overlay-theme="a"
set on me
Learn how to customize and extend popups by working with the API, custom scripts, and styles.
Scaling images Map + video iframes


<EMAIL_ADDRESS>+61 3 8376 6284
Aenean sollicitudin lorem quis bibendum auctor nisi elit consequat ipsum nec
I returned from the City about three o'clock on that May pretty well
had been three months in the Old Country, and was fed up with it
The weather made me liverish, the talk of the ordinary Englishman made sick
It made me bite my lips to think of the plans I had been building up those


Class: Aws::Kendra::Types::AlfrescoConfiguration
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb |
Overview
Provides the configuration information to connect to Alfresco as your data source.
::Aws::Support
for AlfrescoConfiguration
ended May 2023. We recommend
migrating to or using the Alfresco data source template schema /
TemplateConfiguration API.
Constant Summary
Instance Attribute Summary
-
#blog_field_mappings ⇒ Array<Types::DataSourceToIndexFieldMapping>
rw
A list of
DataSourceToIndexFieldMapping
objects that map attributes or field names of Alfresco blogs to Amazon Kendra index field names. -
#crawl_comments ⇒ Boolean
rw
TRUE
to index comments of blogs and other content. -
#crawl_system_folders ⇒ Boolean
rw
TRUE
to index shared files. -
#document_library_field_mappings ⇒ Array<Types::DataSourceToIndexFieldMapping>
rw
A list of
DataSourceToIndexFieldMapping
objects that map attributes or field names of Alfresco document libraries to Amazon Kendra index field names. -
#entity_filter ⇒ Array<String>
rw
Specify whether to index document libraries, wikis, or blogs.
-
#exclusion_patterns ⇒ Array<String>
rw
A list of regular expression patterns to exclude certain files in your Alfresco data source.
-
#inclusion_patterns ⇒ Array<String>
rw
A list of regular expression patterns to include certain files in your Alfresco data source.
-
#secret_arn ⇒ String
rw
The Amazon
::Aws::Kendra::Resource
Name (ARN) of an Secrets Manager secret that contains the key-value pairs required to connect to your Alfresco data source. -
#site_id ⇒ String
rw
The identifier of the Alfresco site.
-
#site_url ⇒ String
rw
The URL of the Alfresco site.
-
#ssl_certificate_s3_path ⇒ Types::S3Path
rw
The path to the SSL certificate stored in an Amazon S3 bucket.
-
#vpc_configuration ⇒ Types::DataSourceVpcConfiguration
rw
Configuration information for an Amazon Virtual Private Cloud to connect to your Alfresco.
-
#wiki_field_mappings ⇒ Array<Types::DataSourceToIndexFieldMapping>
rw
A list of
DataSourceToIndexFieldMapping
objects that map attributes or field names of Alfresco wikis to Amazon Kendra index field names.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#blog_field_mappings ⇒ Array
<Types::DataSourceToIndexFieldMapping> (rw)
A list of DataSourceToIndexFieldMapping
objects that map
attributes or field names of Alfresco blogs to Amazon Kendra index
field names. To create custom fields, use the UpdateIndex
API
before you map to Alfresco fields. For more information, see
Mapping data source fields. The Alfresco data source field names
must exist in your Alfresco custom metadata.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#crawl_comments ⇒ Boolean
(rw)
TRUE
to index comments of blogs and other content.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#crawl_system_folders ⇒ Boolean
(rw)
TRUE
to index shared files.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#document_library_field_mappings ⇒ Array
<Types::DataSourceToIndexFieldMapping> (rw)
A list of DataSourceToIndexFieldMapping
objects that map
attributes or field names of Alfresco document libraries to Amazon
::Aws::Kendra
index field names. To create custom fields, use the
UpdateIndex
API before you map to Alfresco fields. For more
information, see Mapping data source fields. The Alfresco data
source field names must exist in your Alfresco custom metadata.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#entity_filter ⇒ Array
<String
> (rw)
Specify whether to index document libraries, wikis, or blogs. You can specify one or more of these options.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#exclusion_patterns ⇒ Array
<String
> (rw)
A list of regular expression patterns to exclude certain files in your Alfresco data source. Files that match the patterns are excluded from the index. Files that don't match the patterns are included in the index. If a file matches both an inclusion pattern and an exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#inclusion_patterns ⇒ Array
<String
> (rw)
A list of regular expression patterns to include certain files in your Alfresco data source. Files that match the patterns are included in the index. Files that don't match the patterns are excluded from the index. If a file matches both an inclusion pattern and an exclusion pattern, the exclusion pattern takes precedence and the file isn't included in the index.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#secret_arn ⇒ String
(rw)
The Amazon ::Aws::Kendra::Resource
Name (ARN) of an Secrets Manager secret that
contains the key-value pairs required to connect to your Alfresco
data source. The secret must contain a JSON structure with the
following keys:
username—The user name of the Alfresco account.
password—The password of the Alfresco account.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#site_id ⇒ String
(rw)
The identifier of the Alfresco site. For example, my-site.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#site_url ⇒ String
(rw)
The URL of the Alfresco site. For example, https://hostname:8080.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#ssl_certificate_s3_path ⇒ Types::S3Path (rw)
The path to the SSL certificate stored in an Amazon S3 bucket. You use this to connect to Alfresco if you require a secure SSL connection.
You can simply generate a self-signed X509 certificate on any computer using OpenSSL. For an example of using OpenSSL to create an X509 certificate, see Create and sign an X509 certificate.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#vpc_configuration ⇒ Types::DataSourceVpcConfiguration (rw)
Configuration information for an Amazon Virtual Private Cloud to connect to your Alfresco. For more information, see Configuring a VPC.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end
#wiki_field_mappings ⇒ Array
<Types::DataSourceToIndexFieldMapping> (rw)
A list of DataSourceToIndexFieldMapping
objects that map
attributes or field names of Alfresco wikis to Amazon Kendra index
field names. To create custom fields, use the UpdateIndex
API
before you map to Alfresco fields. For more information, see
Mapping data source fields. The Alfresco data source field names
must exist in your Alfresco custom metadata.
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 247
class AlfrescoConfiguration < Struct.new( :site_url, :site_id, :secret_arn, :ssl_certificate_s3_path, :crawl_system_folders, :crawl_comments, :entity_filter, :document_library_field_mappings, :blog_field_mappings, :wiki_field_mappings, :inclusion_patterns, :exclusion_patterns, :vpc_configuration) SENSITIVE = [] include Aws::Structure end


This text should not be displayed if everything goes well: use left/right arrow keys to browse the presentation.
==
==[title-slide][*no-status] =Metadata usage= * Title:
* Author:
* Date:
=SVG + Animations= @svg:niceClass deck.js/samples/smiley.svg 700px 400px @anim-appear:300: #left | #right + #bottom | -#right =Attribution=[*no-status]
==[*fsimg]
==[*fsimg]
==[*fsimg]
=Hello= * Hi, ..... * Todo ** Write you presentation **
Rehearse a little
* See also these links[slide] **
online samples
**
local samples
==Thank you for your attention==[end-slide][*no-status]
/
−
−
←
→


GREAT TAG
IF YOU OR A LOVED ONE HAS BEEN DIAGNOSED WITH MESOTHELIOMA, YOU MAY BE ENTITLED TO A LARGE FINANCIAL COPENSATION


AA Notes
Opinions based in reality
Notes
Reference
Reference Material
AACounty Code
AACounty Bills and Resolutions
Reference - B. Exempt


| "Get connected! Spontaneous networking! No STRINGS attached! Hear from developers using Project JXTA technology. Party and have some fun. Meet interesting people and companies developing with Project JXTA" |
This year's event is set for:
Wednesday June 11, 2003 6 - 8pm
Parc 55 Hotel, San Francisco
Note: this is a free event, and you do not need a JavaOne pass to attend. Please email<EMAIL_ADDRESS>if you are able to attend.
Click here for details on the Java Communities in Action event.