amCharts Responsive
amCharts Responsive
Version: 1.0.2
Description
Use this plugin to enable “responsive” features for amCharts’ JavaScript Charts, JavaScript Stock Chart, or JavaScript Maps.
“Responsive” chart or map will modify it’s features dynamically (even as you resize the container) based on the available area. For example: a full fledged line chart with legend guides, labels, titles and other elements will be displayed in all its glory if container is big enough.
If the container shrinks (i.e. you resize a browser window or view it on an iPad), it starts “compacting” the chart. First the legend is removed. Shrink it even further, axis titles are removed and its value labels are moved inside the plot area. Going even smaller, bullets, labels gone. All the way to the sparkline representation of the chart.
Plugin brings a universal set of pre-defined rules that you can use to instantly enable responsiveness. Those are custom-tailored for each chart/map type and will probably fit your requirements out-of the-box. All you need to do is to enable “responsive” plugin for your chart instance.
You can modify those defaults rules, or make your own list. The plugin allows that. (see further down this file for instructions)
Usage
- Include the minified version of file of this plugin. I.e.:
<script src="amcharts/plugins/responsive/responsive.min.js" type="text/javascript"></script>
(this needs to go after all the other amCharts includes)
- Add the following setting to your chart configuration:
AmCharts.makeChart( "chartdiv", {
...,
"responsive": {
"enabled": true
}
} );
Or if you are using non-JSON setup:
chart.responsive = {
"enabled": true
};
That’s it.
Advanced use
Rules
You can modify (or completely overwrite) the default responsive rules used by the plugin.
A plugin works by checking chart area dimensions after each resize. (or after initial build / mobile device orientation change) It then overrides particular settings suitable for these particular dimensions.
Override rules are implemented by defining chart rules, or just “rules” moving forward. Each rule has two things:
- Dimension conditions;
- Overrides. (a set of properties to override for this particular rule)
A rule is an object, for example:
{
"minWidth": 200,
"maxWidth": 400,
"maxHeight": 400,
"minHeight": 200,
"overrides": {
"precision": 2,
"legend": {
"enabled": false
},
"valueAxes": {
"inside": true
}
}
}
The above rule will be applicable to a chart that is between 200px and 400px in width and height.
It is not necessary to add all of the dimensional properties. You just neat at least one.
So for example to make the rule apply to all charts with width 400px or lower, you would do something like this:
{
"maxWidth": 400,
"overrides": {
"precision": 2,
"legend": {
"enabled": false
},
"valueAxes": {
"inside": true
}
}
}
Please note that there are several other conditional properties besides the ones that deal with chart’s dimensions:
-
“rotate” (true|false) - set this property if you want to make this rule applicable to rotated serial chart only (i.e. bar chart)
-
“legendPosition” (“top|bottom|left|right”) - set this property if you want the rule applied only when the chart legend is set to particular position. Please note that this does not check whether the legend is enabled at all.
Now, on to explaining “overrides”. It’s an object, that contains properties that you want to override the chart’s initial ones with.
It can be either simple properties, like “fontSize” or “precision”, or complext types like object, or array.
To override a property of a child object, such as “legend”, you would simply go with JSON representation of the properties you need to override. I.e.:
"legend": {
"enabled": false
}
This will look for a “legend” property in chart object, then change it’s “enabled” property to false.
Overriding arrays of objects
Some objects in charts are collected in arrays, i.e. “graphs”, “valueAxes”, etc.
There are some ways to override their properties as well.
To override properties for ALL objects in the array, you would provide an override instruction as an object. I.e.:
"graphs": {
"bullet": "round",
"lineThickness": 5
}
The above will add a round bullet and set line thickness to all of the graphs on the chart.
You can also target individual items in the array. There are two ways to do that:
a) Use “id” property; b) Apply using the same index.
To individually apply property overrides, you will need to supply override instructions as an array:
"graphs": [
{
"id": "g1",
"bullet": "round",
"lineThickness": 5
}
]
The above will apply the same properties for the graph with an id of “g1” only. It will not touch the rest of the graphs.
Please note that original graph definition in your chart settings needs to have the “id” property set so this plugin can target it.
Or you can omit the “id” and just apply overrides in the same order as you have them defined. I.e.:
"graphs": [
{
"bullet": "round"
},
{
"bullet": "square"
}
]
The above will apply round bullets to the first defined graph, and square bullets to the second graph.
Chaining multiple rules
The cool pat is that you can daisy-chain the override rules, much like in CSS.
The plugin will examine all of the rules if their dimensional conditions match current chart condition and will apply their overrides in the same order they are defined.
Consider this rule set:
"responsive": {
"enabled": true,
"rules": [
// at 400px wide, we hide legend
{
"maxWidth": 400,
"overrides": {
"legend": {
"enabled"
}
}
},
// at 300px or less, we move value axis labels inside plot area
// the legend is still hidden because the above rule is still applicable
{
"maxWidth": 300,
"overrides": {
"valueAxes": {
"inside": true
}
}
},
// at 200 px we hide value axis labels altogether
{
"maxWidth": 200,
"overrides": {
"valueAxes": {
"labelsEnabled": false
}
}
}
]
}
In case several rules modify the same property, the last one will always “win”.
Combining custom rules with pre-defined ones
The plugin will combine your custom rules with pre-defined ones automatically.
In case you want to go pure and set only your own responsive rules, you can set property “addDefaultRules” to false. I.e.:
"responsive": {
"enabled": true,
"addDefaultRules": false,
"rules": [
{
"maxWidth": 400,
"overrides": {
"legend": {
"enabled"
}
}
}
]
}
When your custom rules are combined with pre-defined ones, yours are appended at the end of the list. This means that your rules will always have the “last word”.
Requirements
This plugin requires at least 3.13 version of JavaScript Charts, JavaScript Stock Chart or JavaScript Maps.
Any older versions will be ignored by this plugin. The charts will function but no responsive rules will be applied to them.
Demos
Run the index.html in the subdirectory /examples. It will allow viewing misc chart types at various resolutions.
Extending this plugin
You’re encouraged to modify, extend and make derivative plugins out of this plugin.
You can modify files, included in this archive or, better yet, fork this project on GitHub:
https://github.com/amcharts/responsive
We’re curious types. Please let us know<EMAIL_ADDRESS>if you do create something new out of this plugin.
License
This plugin is licensed under Apache License 2.0.
This basically means you’re free to use or modify this plugin, even make your own versions or completely different products out of it.
Please see attached file “license.txt” for the complete license or online here:
http://www.apache.org/licenses/LICENSE-2.0
Contact us
-<EMAIL_ADDRESS>- Web: http://www.amcharts.com/
- Facebook: https://www.facebook.com/amcharts
- Twitter: https://twitter.com/amcharts
Changelog
1.0.2
- Fixed a bug where the plugin was causing an error when chart/map container was being hidden
1.0.1
- Fixed bug with overrides being overwritten with chart object in some cases
- V3.14 compatibility
1.0
- Added support for GANTT chart type (available sin JavaScript Charts V3.14)
0.9.2
- Fixed a custom rules being applied in the wrong order
0.9.1
- Made all examples use minified version of the plugin
- Introduced removal of grid lines on micro charts
- Tweaked legend hiding dimensions for pie chart
0.9
- Initial release


TIC TAC T
O
E
PLAYERS
X
PLAYER ONE
VS.
EASY
NORMAL
IMPOSSIBLE
O
PLAYER TWO
PLAYER 1
0
TIES
0
PLAYER 2
0
REMATCH?


Please email<EMAIL_ADDRESS>directly. Don't hesitate to ask if you have any questions. We're happy to help set up your site, discuss Blot and answer your questions.
<EMAIL_ADDRESS>Copy


RawGit either was unable to connect to GitHub or received an invalid response from GitHub. Please try your request again in a moment.


Takes the body of a named macro and places it in a buffer called Macro edit. The name of the macro is associated with the buffer and appears in the mode line at the bottom of the window. The buffer may be edited just like any other buffer. After the macro body has been edited it may be redefined using define-buffer-macro.
See also:
Returns a string describing the version of Emacs that you are running. For V7.0 of Emacs, the string looks something like:
X7.0.81 of Emacs Copyright Barry A. Scott (c) Sun Mar 14 09:30:14 1999The string contains the version number, the date, time and node where Emacs was made, and who made it.
When reporting bugs or suggestions about Emacs, always quote the version number of Emacs to which the comments refer.
Moves dot to just after the last character in the buffer.
See also:
Moves dot to the end of the line in the current buffer. Dot is placed after the last character on the line. If dot is already at the end of the line, it does not move.
See also:
Moves dot to just after the last character visible in the window.
See also:
Makes the current window prefix-argument lines taller, and the window below (or the one above if there is no window below) prefix-argument lines shorter. This function cannot be used if there is only one window on the screen.
Example: Make the current window twice as high as it is currently:
(provide-prefix-argument window-size (enlarge-window))See also:
Returns 1 if dot is at the end of the buffer.
See also:
Returns 1 if dot is at the end of a line.
Example: Delete next character provided that dot is not already at the end of a line.
(if (! (eolp)) (delete-next-character) ) ; ifSee also:
Deletes all text from the current buffer and sets the buffer as unmodified. No prompt is given asking for confirmation that the buffer should be erased.
Example: Delete the content of the current buffer provided that the buffer has not been modified:
(if (! buffer-is-modified) (erase-buffer) )See also:
- erase-region
- delete-buffer
- buffer-is-modified variable
Deletes all text between dot and mark in the current buffer. It does not ask to make sure if you really want to do it.
See also:
(ere-looking-at regular-expression)
Returns 1 if the given regular expression search string matches the text immediately following dot. This is for use in packages that want to do limited parsing.
If a negative prefix argument is supplied, characters to the left of dot are checked, rather than those to the right.
For example, if dot is at the beginning of a line then:
(ere-looking-at "\\s*else")is true if the line starts with any number of spaces or tabs, followed by "else".
See ere-search-forward for more information about regular expression searches.
See also:
Quotes all special ere characters in string so that the string can be searched for literally using ere search functions.
(ere-query-replace-string pattern replacement)
Replaces all occurrences of a pattern with a string, starting at dot and ending at the end of the buffer. For each occurrence of the old string, Emacs requests that the user type a character to indicate whether or not to replace the string. Dot will be positioned just after the found string.
(ere-replace-search-text replacement)
This function performs a regular expression replacement of the text matched by the last search operations.
(ere-replace-string pattern replacement)
Replaces all occurrences of a regular expression with a string, starting at dot and ending and the end of the buffer. See the Barry's Emacs User's Guide for information on how to specify regular expressions and replacement text.
Searches for a pattern match in the current buffer, moving forwards from dot, stopping at the end of the buffer. Dot is left at the end of the matched string if a match is found, or is unmoved if the string is not found.
Searches for a pattern match in the current buffer, moving backwards from dot, stopping at the beginning of the buffer. Dot is left at the beginning of the matched string if a match is found, or is unmoved if not. See the Barry's Emacs User's Guide for information on how to specify regular expressions.
(error-and-exit) ^G (in the Mini-buffer)
This function is used in the Mini-buffer local keymaps to abort the current input operation. If called directly, this function is the same as exit-emacs.
See also:
(error-message string-expression...)
Concatenates the supplied string expressions and sends them to the screen as an error message where they will appear in the Mini-buffer. Emacs returns to keyboard level and sounds the terminal's bell.
Parses error messages for the parse-error-message-in-region and compile-it commands. This function is the default error message parser supplied with Emacs and is capable of locating error messages for VAX C, PL/I and BLISS.
(error-occurred expression...)
Executes the given expressions and ignores their values. If all expressions execute successfully, it returns 0. Otherwise, it returns 1 and all expressions after the one which encountered the error will not be executed.
The text of any error message is available for processing in the string variable error-message.
See also:
- error-message variable
Sets dot to the current location of the mark and sets the mark at the old position of dot. This is useful for bouncing back and forth between two points in a file, particularly when the two points delimit a region of text that is going to be operated on by a command such as delete-to-killbuffer.
See also:
(execute-extended-command extended-command) ESC-x, Do
Executes the specified extended command.
If called interactively, it prompts for the command to execute. You can type ESC or space to invoke command completion, or a question mark (?) for a list of valid commands.
Invokes the currently-defined keyboard macro. This is a remembered sequence of keystrokes.
See also:
Parses and compiles the current buffer as a single MLisp expression and executes it. This function is useful when you are testing new functions.
See also:
Reads the named file as a series of MLisp expressions and executes them.
The file name given is interpreted relative to the EMACS_PATH logical name. EMACS_PATH is defined as a logical name search-list. If the file cannot be located using EMACS_PATH, a search is made in the database search-list MLisp-library.
The default file type is .ML
To modify EMACS_PATH, select Edit, Preferences, Directories.
See also:
(execute-mlisp-line MLisp-expression) ESC-ESC
Prompts for a string in the Mini-buffer, parses it as an MLisp expression, and executes it.
If called from a MLisp program, the command to be executed must be supplied as a string. This provides for dynamic compilation during the execution of a program.
See also:
(execute-monitor-command DCL-command) ^X-!
Passes the command to the operating system and places the command output into a buffer called Command execution, making that buffer visible in a window. The command that is run cannot read from its standard input, so execute-monitor-command cannot be used if the command that is run will prompt for information.
See also:
Exits Emacs if the current recursion depth is zero. It will ask for confirmation if there are any buffers that have been modified but not written out.
If the recursion depth is not zero, exit-emacs exits the current recursive edit level.
See also:
(expand-and-exit) ESC (in the Mini-buffer)
Causes command completion to occur in the Mini-buffer. If called interactively, this function is the same as exit-emacs.
See also:
Returns the fully-expanded file specification of the file name argument.
Wildcards may be specified to obtain a sequence of file names. Call expand-file-name first with the wildcard file specification. Then call expand-file-name specifying a null filename until an error occurs.
Example: a function to prompt for a file specification and then insert, into the current buffer, the names of all the files that match the specification.
(defun (insert-filelist spec (setq spec (expand-file-name (get-tty-string "Insert names matching: "))) (while (!= spec "") (insert-string (concat spec "\n")) (setq spec (expand-file-name "")) ) ) ) )See also:
(expand-file-name-recursive file-name)
Returns the fully-expanded file specification of the file name argument.
Wildcards may be specified to obtain a sequence of file names. Call expand-file-name-recursive first with the wildcard file specification. Then call expand-file-name-recursive specifying a null filename until an error occurs.
expand-file-name-recursive starts looking for files in the directory specified in file-name. It then looks in all of the subdirectories under the starting directory.
Example: A function prompts for an mlisp function and executes that function on all files that match the given file specification.
(defun function-on-many-files ( ~files (get-tty-file "do function on these files: ") ~function (get-tty-command "function to execute: ") ~recursive (get-tty-string "recursive? (y/n) [N] ") ) ~target (setq ~function (concat "(" ~function ")")) (if (= ~recursive "y") (setq ~target (expand-file-name-recursive ~files)) (setq ~target (expand-file-name ~files)) ) ; if (while (!= ~target "") (save-excursion (visit-file ~target) (beginning-of-file) (sit-for 0) (execute-mlisp-line ~function) (if buffer-is-modified (write-current-file) ) ; if (delete-buffer current-buffer-name) (if (= ~recursive "y") (setq ~target (expand-file-name-recursive "")) (setq ~target (expand-file-name "")) ) ; if ) ; save-excursion ) ; while ) ; defun - function-on-many-filesSee also:
(expand-mlisp-variable variable-name)
Inserts the name of the specified variable in a buffer, using variable name completion.
See also:
(expand-mlisp-word command-name)
Prompts for the name of a command and then inserts the name as text into the current buffer. This is very handy when you are editing an MLisp function. It's useful to bind expand-mlisp-word to a key for easy access.
See also:
(expand-from-string-table prompt word-list-string)
Provides access to the Emacs input expansion mechanism. The function has two parameters: the first is a prompt, the second is a string that contains a space-separated list of words from which the user can select. The result of the function is the selected word. expand-from-string-table allows only one of the words in the list to be returned.
Example: A function that prompt for the name of a fruit to insert into the current buffer
(defun (fruit-picker (insert-string (expand-from-string-table "choose a fruit: " "strawberry apple banana" ) ) ) )Example: Prompt for one of the words "exit", "read", "write", "quit".
(expand-from-string-table "Command: " "exit read write quit")
(expand-mlisp-word command-name)
Inserts the name of the specified function in a buffer using variable name completion.
(extend-database-search-list dbname filename access)
Adds the given database file to the database search list dbname. If the database is already in the search list, it is left there. Otherwise, the new database is added at the beginning of the database list.
Databases are help or macro libraries.
Access is a bit mask that specifies the type of access required and it is optional. The allowable values of access are:
- Bit 0: force read-only access
- Bit 1: Keep the file open between database accesses
- Bit 2: Create database if possible
See also:
(external-function function file routine)
Declares function as being provided by routine in the image file. This image is dynamically linked into the Emacs process when the function is called.


OSGiFrameworkException(bundleException: BundleException, bundle: Bundle)
Extends the BundleException class keeping a reference to the location of the bundle at the origin of the exception.
bundleException - instance of the superclass.
bundleException
bundle - at the origin of the exception.
bundle


Run the statements in the right panel.
Here are some more built-in functions that manipulate text. Note that this is just a sample of the functions that are available.
You should see a result set in the lower right panel after running the script.


(#) Using getUsableSpace() !!! WARNING: Using getUsableSpace() This is a warning. Id : `UsableSpace` Summary : Using getUsableSpace() Severity : Warning Category : Performance Platform : Android Vendor : Android Open Source Project Feedback : https://issuetracker.google.com/issues/new?component=192708 Affects : Kotlin and Java files Editing : This check runs on the fly in the IDE editor Implementation : [Source Code](https://cs.android.com/android-studio/platform/tools/base/+/mirror-goog-studio-main:lint/libs/lint-checks/src/main/java/com/android/tools/lint/checks/StorageDetector.kt) Tests : [Source Code](https://cs.android.com/android-studio/platform/tools/base/+/mirror-goog-studio-main:lint/libs/lint-tests/src/test/java/com/android/tools/lint/checks/StorageDetectorTest.kt) Copyright Year : 2018 When you need to allocate disk space for large files, consider using the new `allocateBytes(FileDescriptor, long)` API, which will automatically clear cached files belonging to other apps (as needed) to meet your request. When deciding if the device has enough disk space to hold your new data, call `getAllocatableBytes(UUID)` instead of using `getUsableSpace()`, since the former will consider any cached data that the system is willing to clear on your behalf. Note that these methods require API level 26. If your app is running on older devices, you will probably need to use both APIs, conditionally switching on `Build.VERSION.SDK_INT`. Lint only looks in the same compilation unit to see if you are already using both APIs, so if it warns even though you are already using the new API, consider moving the calls to the same file or suppressing the warning. (##) Example Here is an example of lint warnings produced by this check: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~text src/test/pkg/test.kt:8:Warning: Consider also using StorageManager#getAllocatableBytes and allocateBytes which will consider clearable cached data [UsableSpace] return file.usableSpace ----------- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Here is the source file referenced above: `src/test/pkg/test.kt`: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~kotlin linenumbers package test.pkg import android.os.Build import android.os.storage.StorageManager import java.io.File fun getFreeSpace(file: File): Long { return file.usableSpace } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ You can also visit the [source code](https://cs.android.com/android-studio/platform/tools/base/+/mirror-goog-studio-main:lint/libs/lint-tests/src/test/java/com/android/tools/lint/checks/StorageDetectorTest.kt) for the unit tests for this check to see additional scenarios. The above example was automatically extracted from the first unit test found for this lint check, `StorageDetector.testWrong`. To report a problem with this extracted sample, visit https://issuetracker.google.com/issues/new?component=192708. (##) Suppressing You can suppress false positives using one of the following mechanisms: * Using a suppression annotation like this on the enclosing element: ```kt // Kotlin @Suppress("UsableSpace") fun method() { getUsableSpace(...) } ``` or ```java // Java @SuppressWarnings("UsableSpace") void method() { getUsableSpace(...); } ``` * Using a suppression comment like this on the line above: ```kt //noinspection UsableSpace problematicStatement() ``` * Using a special `lint.xml` file in the source tree which turns off the check in that folder and any sub folder. A simple file might look like this: ```xml <?xml version="1.0" encoding="UTF-8"?> <lint> <issue id="UsableSpace" severity="ignore" /> </lint> ``` Instead of `ignore` you can also change the severity here, for example from `error` to `warning`. You can find additional documentation on how to filter issues by path, regular expression and so on [here](https://googlesamples.github.io/android-custom-lint-rules/usage/lintxml.md.html). * In Gradle projects, using the DSL syntax to configure lint. For example, you can use something like ```gradle lintOptions { disable 'UsableSpace' } ``` In Android projects this should be nested inside an `android { }` block. * For manual invocations of `lint`, using the `--ignore` flag: ``` $ lint --ignore UsableSpace ...` ``` * Last, but not least, using baselines, as discussed [here](https://googlesamples.github.io/android-custom-lint-rules/usage/baselines.md.html).


Anastasia Pelias
Statement
In my studio practice I embrace a process that is both intuitive and deliberate. My work moves from paintings on canvas and works on paper to site-specific installations, objects and video. My intention is to invite the viewer to experience a suspended moment and also to engage in their own consciousness. The human-size scale of my interactions with diverse media allows the viewer to immerse oneself in the work as opposed to simply being an observer.
Greek rituals and icons, the rich Afro-Caribbean culture in New Orleans, the shifting landscape of both my immediate environment, Louisiana, and of my familial home, Greece, all equally inform my work.
Relationships have always been at the center of what motivates me to make art.
Formal relationships dealing with color, marks and space. The different kinds of tension that exist between objects and forms. Relationships between people, their narratives and their environments. The complexities and absurdities of relationships – between man and woman, between mother and daughter. Deep ancestral connections that are ever-present, that resonate even if they’re not always understood.
I want to reveal the poetic moments that exist within these relationships. I hope to create work that is full of emotion and visual pleasure.
Bio
Anastasia Pelias was born in New Orleans, LA to Greek parents. Her artistic practice is rooted in the dual cultural identity of both her native and ancestral roots in New Orleans, LA and Skopelos, Greece. Blending the vibrant, compassionate nature of a New Orleanian with her weighty Greek heritage, Pelias creates work that is rich with personal depth of emotion, life experience and the spirit of exploration. An abstractionist in the truest form, Pelias’ work reflects a seriousness and dedication to the traditional principles of painting – both the concept and the actuality.
Pelias received her BFA from the Newcomb College of Tulane University in 1981 and her MFA from the University of New Orleans in 1996. Her career spans thirty years and multiple reinventions. She has been featured in exhibitions, art fairs and publications nationally and has works included in private and public collections, including the New Orleans Museum of Art, the Ogden Museum of Southern Art and the Mobile Museum of Art.
https://www.anastasiapelias.com/


Activity Name
Search Query
Search By
Activity Overview
Activity Name
Activity Venue
Activity Date
??
has attended


Comments? Questions? Want to sponsor?
Contact Us
We can be reached at the [at] nodebotani.st or @nodebotslive
You can also support the podcast via our Patreon page!
"Is it a long 'i', or short?"
"Yes."
We're off and running! In this episode, I talk about new and exciting boards, libraries, and events, as well as set up the the next set of episodes!
You can find the episode link here!
Some useful links from our episode:
Kassandra is a Mad Scientist and Open Web Educator at Bocoup.
We can be reached at the [at] nodebotani.st or @nodebotslive
You can also support the podcast via our Patreon page!


To uninstall DeskPins, select the Uninstall item in the DeskPins program group in the Start menu, or use the DeskPins entry in the Add/Remove Programs applet of the Control Panel.
The uninstaller will remove the program folder and the following Registry keys:


by Sher Minn Chong / @piratefsh at EmpireJs 2016
Malaysia
Singapore
EmpireJS | Recurse Center
tweet me at @piratefsh
code: https://github.com/piratefsh/p5js-art | slides: https://git.io/vrrwU


Introducing the highly anticipated game Cyberpunk 2077 by publishers CDProjektRed! Creators of the award winning and critically acclaimed Witcher 3, CDPR has returned with a triumphant roar with their cyber enhanced futuristic world. Moving from the third person action rpg CDPR made their name with, they have instead created a first person experience allowing players to see their realized techno world.
Welcome to E3 2019!
E3 is the world’s premier event for computer and video games and related products. At E3, the video game industry’s top talent pack the Los Angeles Convention Center, connecting tens of thousands of the best, brightest, and most innovative in the interactive entertainment industry. For three exciting days, leading-edge companies, groundbreaking new technologies, and never-before-seen products will be showcased. E3 connects you with both new and existing partners, industry executives, gamers, and social influencers providing unprecedented exposure to the entire video game industry, all under one roof.
Show Hours for 2019
| Date | Industry Pass | Gamer Pass |
|---|---|---|
| Tuesday, June 11 | 11:00AM - 7:00PM | 2:00AM - 7:00PM |
| Wednesday, June 12 | 9:00AM - 7:00PM | 12:00PM - 7:00PM |
| Thursday, June 13 | 9:00AM - 6:00PM | 9:00AM - 6:00PM |


// Loading View to show when initially querying for DemoRequests
// Label when no demos are found shows message that no demo requests were
found
// listview for demo requests
// Requesting User Email
// Entity Created
// Contact_Info
// Action Buttons


Last Updated:
Patient Management
Search
Refresh
Patient
Ward
Admin
13209009485
<EMAIL_ADDRESS>Medical Department
20 people inside
×
Close
Patient Info
Update or Insert
Name
6-8 characters
Mobile
e.g.<PHONE_NUMBER>1
Email
e,g. aaa@aaa
Age
Gender
Update Avator
Unselected picture
150*150:
100*100:
30*30:
×
Close
Send Message


We present a method based on filtering algorithms to estimate the parameters of linear regressions, i.e. the coefficients and the variance of the error term. The proposed algorithms make use of Particle Filters following Ristic, B., Arulampalam, S., Gordon, N. (2004, ISBN: 158053631X) resampling methods.
| Version: | 0.1.2 |
| Depends: | R (≥ 3.5.0) |
| Imports: | MASS (≥ 7.3-50), stats (≥ 3.5.1) |
| Published: | 2018-08-14 |
| Author: | Christian Llano Robayo [aut, cre], Nazrul Shaikh [aut] |
| Maintainer: | Christian Llano Robayo <cxl985 at miami.edu> |
| BugReports: | https://github.com/ChrissCod/LMfilteR/issues |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| NeedsCompilation: | no |
| Materials: | NEWS |
| CRAN checks: | LMfilteR results |
| Reference manual: | LMfilteR.pdf |
| Package source: | LMfilteR_0.1.2.tar.gz |
| Windows binaries: | r-devel: LMfilteR_0.1.2.zip, r-release: LMfilteR_0.1.2.zip, r-oldrel: LMfilteR_0.1.1.zip |
| OS X binaries: | r-release: LMfilteR_0.1.1.tgz, r-oldrel: LMfilteR_0.1.1.tgz |
| Old sources: | LMfilteR archive |
Please use the canonical form https://CRAN.R-project.org/package=LMfilteR to link to this page.


Thank You
Your submission has been received
I will have a proposal ready for you within 2 business days


Something went haywire and we could not process your connection on Strautomator.
Most of the time, a simple refresh of this page should fix the problem. If it persists, you can try connecting with Strava once again:
Email<EMAIL_ADDRESS>Twitter: @strautomator


This is the one part of your gear that you need to go high end on. It doesn't matter how good the rest of your gear is, if you can't see where you're going, you will have a bad time. The cheaper googles will keep the snow out of your eyes, but where they fail is with thier anti fog. They don't have any! If your googles fog up in the middle of your dream line you'll miss out on those freshies. Higher end goggles tend to have a good anti fog coating on them. It's very important not to touch the inside of the goggles. If you get snow in them just tap them out, do not wipe them or you will damage the anti fog coating on the lens. As far as the tint goes, dark lenses look cool, but in overcast or flat lighting they will take the depth out of the snow and leave you with super fun suprise drops and jumps. Save the dark lenses for bright sunny days, and find light pink or yellow lenses for cloudy or foggy days.


Week by week
Month 0: #MakeUmuziBetter
Week 1: Linux and intro to curriculum
- TOPIC: introduction to linux
- TOPIC: introduction to bash
- WORKSHOP: Introduction to NCIT curriculum
- NCIT 01: Business and technology
- NCIT 02: Ethics and Professionalism in IT
- WORKSHOP: Git basics
- PROJECT INTRO: Development of a portfolio website
? bootstrap etc have to be learned. FCC
Week 3: Personal portfolio and conducting research
- NCIT 03: Conducting research and user interviews
- Workshop: Survey design with Google Forms
- PROJECT DEADLINE: Development of a portfolio website
? PROJECT INTRO: Research notes
Week 4:
Week 5:
- NCIT 05: Research presentation
- NCIT 06: Workshop: Giving and receiving constructive feedback
Week 6:
Week 7:
- WORKSHOP: virtualenvironments and environmental variables
- NCIT 10: Agile project management
- NCIT 11: Agile meetings
- NCIT 12: Boolean algebra, logic
? Workshop: Problem solving techniques
Week 8:
- NCIT 13: Version control (GIT) for teamwork (insufficient)
- NCIT 14: Pseudocode and documentation
? Workshop: Project organization and naming conventions, cookie-cutter data science
Weeks 9 & 10: OOP
Week 11:
- NCIT 16: Test-driven development
- Assignment: Testing your code with py.test and unittest
Week 12:
Week 13:
Week 14
- NCIT 18: Input & Output
- TOPIC: XPath
- WORKSHOP: web scraping with selenium and XPath
- Webscraping
- Getting data from a database
Week 15:
- NCIT 19: Search and sort techniques
- Assignment: search and sort algorithms
Week 16:
Week 17:
Week 18: SQL
Week 19:
Week 20:
Week 21:
Week 22:
Week 23:
Week 24:
Months 6-9: Product Teams
Product teams are teams of no more than 6 recruits guided by a product owner (Umuzi staff). The teams use the Scrum methodology to build real-world, web-based products. Recruits learn additional frameworks (e.g. Django) and packages as needed for the products.
Additional learning
In addition to the curriculum listed above, the recruits participate in workshops given by industry professionals and Umuzi staff. Generally there are 2-3 workshops each month. Topics include time management, public speaking, networking, preparing for technical interviews, introduction to new frameworks, tech trends, etc.
Recruits are also encouraged to attend industry meetups, conferences, and hackathons. On average, recruits attend 1 meetup/conference per month and 1-2 hackathons during their time at Umuzi.
TODO
- WORKSHOP: Object Oriented Thinking
- TOPIC: database tradeoffs
- TOPIC: HTML
- TOPIC: JSON
- TOPIC: Intro to docker
- WORKSHOP: git basics
- WORKSHOP: clean code for Python dev
- PROJECT INTRO: sql schema design, normalisation and denormalisation
- PROJECT INTRO: screen scrape with selenium into a db
- PROJECT INTRO: collect data from api and load into db
- PROJECT INTRO: send data to another api
- WORKSHOP: introduction to development tools and environment for data eng
- WORKSHOP: introduction to unit tests with PyTest
- TOPIC: streaming versus batch processing
if there is time:
It would be nice to just let them touch on various tools just so they know what exists. It might prevent them from re-inventing wheels.
- TOPIC: Intro DAGs with Airflow. or Luigi
- TOPIC: Intro to cloud computing with GCP. cloudsql and vms in detail. and mention other things and point at tutorials as needed.
- TOPIC: Redis basics
- TOPIC: Introduction to Spark (just so they know what it is and where to find info if they need to)


Setup
Git Setup and first time configuration
Git bash ( The power of using command to control your operating system )
(New) What's git bash ?
Essential Commands
Cloning and branching essential commands
Workflow
Git Branch Workflow the concept
Checkout process
Getting The latest Package scenario
Updating
Providing New Features
Mainting Gitlab updated
Workflow
Git Workflow the Implementation


TTarFileExtractor class
Located in /IO/TTarFileExtractor.php (line 38)
Archive_Tar Class constructor. This flavour of the constructor only declare a new Archive_Tar object, identifying it by the name of the tar file.
This method extract all the content of the archive in the directory indicated by $p_path. When relevant the memorized path of the files/dir can be modified by removing the $p_remove_path path at the beginning of the file/dir path.
While extracting a file, if the directory path does not exists it is created. While extracting a file, if the file already exists it is replaced without looking for last modification date. While extracting a file, if the file already exists and is write protected, the extraction is aborted. While extracting a file, if a directory with the same name already exists, the extraction is aborted. While extracting a directory, if a file with the same name already exists, the extraction is aborted. While extracting a file/directory if the destination directory exist and is write protected, or does not exist but can not be created, the extraction is aborted. If after extraction an extracted file does not show the correct stored file size, the extraction is aborted. When the extraction is aborted, a PEAR error text is set and false is returned. However the result can be a partial extraction that may need to be manually cleaned.
Check if a directory exists and create it (including parent dirs) if not.
Documentation generated on Mon, 22 Feb 2010 12:18:51 +0000 by phpDocumentor 1.3.0RC4


Floating point numbers in JS
Javascript
0.1 + 0.2
0.30000000000000004
Java
0.1 + 0.2
0.30000000000000004
IEEE 754
- Sign: 0 => positive, 1 => negative
- Exponent: number of digits left or right the floating point that should be shifted
- Mantissa: binary digits of the number. Whole numbers => 2x, decimals => 2-x (or 1/2x)
Additional information
- +Infinity: Sign 0; Exponent 2047; Mantissa 0
- -Infinity: Sign 1; Exponent 2047; Mantissa 0
- NaN: Sign 0/1; Exponent 2047; Mantissa !== 0
What happens ?
- 100 (binary) = 4. (1 x 22 + 0 x 21 + 0 x 20 = 4)
- In JS numbers, any digit that exceeds the 52 bits of the mantissa are assumed to be 0
- JS numbers are converted from decimal to binary
- 0.125 in decimal = 125/1000 = 1/8 = 1/23 = 0.001 in binary
- 0.1 in decimal = 1/10 = 1/2 * 5
- 0.2 in decimal = 1/20 = 1/2 * 2 * 5
- 🤔 The decimal values in our binary representation are defined using 2-x (or 1/2x)
- 😱 No way to cleanly find a exponent that our number goes into
- 🏃 We’ll continue to get back decimal/fraction results until we run out of bits
- 💾 When the conversion exhausts its bits, it’ll store the result
- 🤷 In this case it ends in 100 in binary or 4
How to avoid that?
- Stop using JavaScript 😜
- Scale up our result to an integer and scale back after
- Example: 0.1 * 10, 0.2 * 10 = 1.0 + 2.0 = 3.0/10 = 0.3
toPrecision()
and toFixed()
for display purposes only
```js
function foo(x, y) {
return x.toPrecision() + y.toPrecision()
}
> foo(0.1, 0.2)
"0.10.2"
```
Math libraries
- sinful.js
- math.js
- BigDecimal


|
CMSIS-Zone
Version 1.1.0
System Resource Management
|
The /rzone/resources/memories element contains:
Example
| Parent Element | Element Chain | ||
|---|---|---|---|
| resources | /rzone/resources element | ||
| Child Elements | Description | Type | Occurrence |
| memory | Lists a logical memory region with physical mapping. Memory might restricted to processors, access, or security modes. | complexType | 0..1 |
| mpc | Specifies a Memory Protection Controller (MPC) for a physical address range. | complexType | 0..1 |
The /rzone/resources/memories/memory element lists a logical memory region with physical mapping. Memory might restricted to processors, access, or security modes.
| Parent Element | Element Chain | ||
|---|---|---|---|
| memories | /rzone/resources/memories element | ||
| Attributes | Description | Type | Use |
| name | The name of this memory region which must be unique in this *.rzone file. | xs:string | required |
| type | The type of memory in this region ("RAM" or "ROM"). | PhysicalTypeEnum | required |
| start | The logical start address of the memory region in the address map. | NonNegativeInteger | required |
| physical | The physical start address of the memory region in the address map. If physical is not specified the start address value is used. | NonNegativeInteger | optional |
| size | The size of the memory region in bytes. | NonNegativeInteger | required |
| access | Access permissions for this memory region. | AccessType | optional |
| security | Security attributes for this memory region. | SecurityType | optional |
| privilege | Privilege level for this memory region. | PrivilegeType | optional |
| startup | "1" specifies that this region is used for the startup code of the application. Default value is "0". | xs:boolean | optional |
| uninit | "1" specifies that this region is not zero initialized during startup. Default value is "0". | xs:boolean | optional |
| shared | "1" specifies that this region is used by multiple zones. Default value is "0". | xs:boolean | optional |
| dma | "1" specifies that this region is accessed by a DMA controller. Default value is "0". | xs:boolean | optional |
| external | "1" specifies that this region is provided by an external component that is not part of the device. Default value is "0". | xs:boolean | optional |
| Pname | The processor that can access this memory region. If omitted all processors of the system have access. | xs:string | optional |
| info | Brief description of the memory region. | xs:string | optional |
The /rzone/resources/memories/mpc element element specifies a Memory Protection Controller (MPC) for a physical memory address region. The MPC region must not necessarily overlap a physical memory space which means it can be larger or smaller.
| Parent Element | Element Chain | ||
|---|---|---|---|
| memories | /rzone/resources/memories element | ||
| Attributes | Description | Type | Use |
| name | The base register name of the MPC. | xs:string | required |
| start | The physical start address of the memory address region that is protected by the MPC. | NonNegativeInteger | required |
| size | The size of the memory address region in bytes. | NonNegativeInteger | required |
| blk_size | The size (in bytes) of each memory block. This value is also the alignment requirement for the memory blocks. The number of LUT bits is: memory size / blk_size. | NonNegativeInteger | required |
| type | Specifies the permissions that the MPC verifies for the memory access:
| MpcTypeEnum | optional |
| info | Brief description of the memory region. | xs:string | optional |


| Base | Patch | Difference | |
|---|---|---|---|
| Violations | 0 | 0 | +0 -0 ~0 |
| Errors | 0 | 0 | +0 -0 ~0 |
| ConfigErrors | 0 | 0 | +0 -0 ~0 |
| Execution time | 00:00:00 | 00:00:00 | 00:00:00 |
| Timestamp | 0 | 0 | |
| Exit Code | ? stdout | stderr | ? stdout | stderr | |
| Full Report | Base PMD Report | Patch PMD Report |
| Base | Patch | Difference | |
|---|---|---|---|
| Violations | 0 | 0 | +0 -0 ~0 |
| Errors | 0 | 0 | +0 -0 ~0 |
| ConfigErrors | 0 | 0 | +0 -0 ~0 |
| Execution time | 00:00:00 | 00:00:00 | 00:00:00 |
| Timestamp | 0 | 0 | |
| Exit Code | ? stdout | stderr | ? stdout | stderr | |
| Full Report | Base PMD Report | Patch PMD Report |
| Rule | Base | Patch | Added | Changed | Removed |
|---|
| Location (click row to expand) | Rule | Message | Type |
|---|
| File | Description (click to expand) |
|---|
| Rule | Message |
|---|


Sorry, only modern browsers
Unfunny
Alone
Boss
Taklu
No DP
Peena Gandi Baat
Why Deepak
Nahi sudhrega
Tip: to see a continuous flow, keep your mouse pressed on the navigation arrows.


Presented by IBM Techtight
IBM Power servers – The best option for your business
by PartnerAs technology continues to evolve, it has become increasingly important to have access to the right infrastructure for your business.
IBM Power Systems servers are designed to execute your business’s most advanced and process-critical data applications – ensuring that you don’t have to worry about server workload management.
IBM Power servers are multi-functional, capable of running mission-critical workloads and are able to support future AI implementations.
They are driven by a built-in PowerVM virtualisation, which ensures that the next-generation IBM Power9 systems are ready for the cloud.
This ensures that you can implement cloud environments that best suit your business, and provide the best performance for what you require.
Power9 servers
IBM’s Power9 servers have been developed to handle the most demanding, data-intensive computing that you could possibly put them through.
This ensures that businesses are able to access critical insights from the efficient processing of data.
These servers boast industry-leading reliability and security, ensuring that you can rest assured knowing that your important data is protected from issues caused by human error or malicious parties.
As proof of its reliability, Power Systems servers were ranked first for every major reliability criterion by the ITIC Global Server Hardware Reliability Report.
Power9 servers also offer some of the best value-for-money on the market.
This is because superior core performance and memory bandwidth enables these servers to provide impressive levels of output – offering superior price-to-performance benefits.
Power9 servers are available across a variety of areas, including Power9 for Linux, Power9 for Enterprise, and Power9 for Enterprise AI, Deep Learning and Machine Learning.
IBM Hyperconverged systems
IBM’s Power servers aren’t limited to their impressive hardware, however.
IBM Hyperconverged systems, powered by Nutanix, provide IT customers with the capability to dramatically simplify their data centre operations.
This is achieved through the utilisation of the Nutanix cloud platform, which is capable of transforming complicated IT infrastructure into an efficient virtualisation.
Hyperconverged systems are designed to be scaled both up and down without causing the traditional bottlenecks associated with traditional architectures.
Instead, scaling can be done in minutes simply by adding new nodes to your distributed architecture – ensuring that processing power is shared equally and doesn’t starve other processes.
Some of the other benefits of IBM Hyperconverged systems include:
- 73% less time to deploy compute.
- 61% less time to manage.
- 97% fewer occurrences of downtime.
- Twice the price performance compared to commodity processor architectures on popular workloads such as MongoDB and EDB Postgres.
Tectight
Tectight is a leading South African IT infrastructure solutions provider that specialises in the delivery and maintenance of servers, storage, backup, and cloud applications.
They have developed a great reputation in the South African market for offering service and solutions that solve their clients’ needs.
Tectight is a Gold Business Partner of IBM, and offers IBM Power solutions that can optimise your business’ data application requirements.
Click here to learn more about Tectight’s IBM Power server solutions
This article was published in partnership with IBM Techtight.


We will provide a list of the tech your company produces to all hackers before the event, so that they can use it too.
You may list as many pieces of tech that your company produces, and we will advertise it before the hackathon. This is a great opportunity to increase adoption of your products ahead of the hackathon, but please bear in mind items you list should be related to soft/hardware engineering and design, not generic commercial products. If you have lots of relevant items, this may be more overwhelming than helpful; we recommend you focus on the perhaps 3 or 4 technologies that you think may be most useful for a weekend hackathon project. If you are running any competitions, workshops or side-events, be sure to list any related tech!


Objects¶
Setup¶
In order to interact with this feature, you must first retrieve a particular container using its unique name:
$container = $service->getContainer('{containerName}');
Create an object¶
There are three ways to upload a new file, each of which has different business needs.
Note
Unlike previous versions, you do not need to manually specify your object’s content type. The API will do this for you.
Note
When working with names that contain non-standard alphanumerical characters (such as spaces or non-English characters), you must ensure they are encoded with urlencode before passing them in.
Upload a single file (under 5GB)¶
The simplest way to upload a local object, without additional metadata, is by its path:
$container->uploadObject('example.txt', fopen('/path/to/file.txt', 'r+'));
The resource handle will be automatically closed by Guzzle in its destructor, so there is no need to execute fclose.
Upload a single file (under 5GB) with metadata¶
Although the previous section handles most use cases, there are times when you want greater control over what is being uploaded. For example, you might want to control the object’s metadata, or supply additional HTTP headers to coerce browsers to handle the download a certain way. To add metadata to a new object:
use OpenCloud\ObjectStore\Resource\DataObject;
// specify optional metadata
$metadata = array(
'Author' => 'Camera Obscura',
'Origin' => 'Glasgow',
);
// specify optional HTTP headers
$httpHeaders = array(
'Content-Type' => 'application/json',
);
// merge the two
$allHeaders = array_merge(DataObject::stockHeaders($metadata), $httpHeaders);
// upload as usual
$container->uploadObject('example.txt', fopen('/path/to/file.txt', 'r+'), $allHeaders);
As you will notice, the first argument to uploadObject is the remote object name, i.e. the name it will be uploaded as. The second argument is either a file handle resource, or a string representation of object content (a temporary resource will be created in memory), and the third is an array of additional headers.
Batch upload multiple files (each under 5GB)¶
$files = array(
array(
'name' => 'apache.log',
'path' => '/etc/httpd/logs/error_log'
),
array(
'name' => 'mysql.log',
'body' => fopen('/tmp/mysql.log', 'r+')
),
array(
'name' => 'to_do_list.txt',
'body' => 'PHONE HOME'
)
);
$container->uploadObjects($files);
As you can see, the name key is required for every file. You must also specify either a path key (to an existing file), or a body. The body can either be a PHP resource or a string representation of the content you want to upload.
Upload large files (over 5GB)¶
For files over 5GB, you will need to use the OpenCloud\ObjectStore\Upload\TransferBuilder factory to build and execute your transfer. For your convenience, the Container resource object contains a simple method to do this heavy lifting for you:
$transfer = $container->setupObjectTransfer(array(
'name' => 'video.mov',
'path' => '/home/user/video.mov',
'metadata' => array('Author' => 'Jamie'),
'concurrency' => 4,
'partSize' => 1.5 * Size::GB
));
$transfer->upload();
You can specify how many concurrent cURL connections are used to upload parts of your file. The file is fragmented into chunks, each of which is uploaded individually as a separate file (the filename of each part will indicate that it’s a segment rather than the full file). After all parts are uploaded, a manifestfile is uploaded. When the end-user accesses the 5GB by its true filename, it actually references the manifest file which concatenates each segment into a streaming download.
In Swift terminology, the name for this process is Dynamic Large Object (DLO). To find out more details, please consult the official documentation.
List objects in a container¶
To return a list of objects:
$files = $container->objectList();
foreach ($files as $file) {
/** @var $file OpenCloud\ObjectStore\Resource\DataObject */
}
By default, 10,000 objects are returned as a maximum. To get around this, you can construct a query which refines your result set. For a full specification of query parameters relating to collection filtering, see the official docs.
$container->objectList(array('prefix' => 'logFile_'));
Get object¶
To retrieve a specific file from Cloud Files:
/** @var $file OpenCloud\ObjectStore\Resource\DataObject */
$file = $container->getObject('summer_vacation.mp4');
Once you have access to this OpenCloud\ObjectStore\Resource\DataObject object, you can access these attributes:
Get object’s parent container¶
/** @param $container OpenCloud\ObjectStore\Resource\Container */
$container = $object->getContainer();
Get file name¶
/** @param $name string */
$name = $object->getName();
Get file size¶
/** @param $size int */
$size = $object->getContentLength();
Get content of file¶
/** @param $content Guzzle\Http\EntityBody */
$content = $object->getContainer();
Get type of file¶
/** @param $type string */
$type = $object->getContentType();
Get file checksum¶
/** @param $etag string */
$etag = $object->getEtag();
Get last modified date of file¶
/** @param $lastModified string */
$lastModified = $object->getLastModified();
Conditional requests¶
You can also perform conditional requests according to RFC 2616 specification (§§ 14.24-26). Supported headers are If-Match, If-None-Match, If-Modified-Since and If-Unmodified-Since.
So, to retrieve a file’s contents only if it’s been recently changed
$file = $container->getObject('error_log.txt', array(
'If-Modified-Since' => 'Tue, 15 Nov 1994 08:12:31 GMT'
));
if ($file->getContentLength()) {
echo 'Has been changed since the above date';
} else {
echo 'Has not been changed';
}
Retrieve a file only if it has NOT been modified (and expect a 412 on failure):
use Guzzle\Http\Exception\ClientErrorResponseException;
try {
$oldImmutableFile = $container->getObject('payroll_2001.xlsx', array(
'If-Unmodified-Since' => 'Mon, 31 Dec 2001 23:00:00 GMT'
));
} catch (ClientErrorResponseException $e) {
echo 'This file has been modified...';
}
Finally, you can specify a range - which will return a subset of bytes from the file specified. To return the last 20B of a file:
$snippet = $container->getObject('output.log', array('range' => 'bytes=-20'));
Update an existing object¶
$file->setContent(fopen('/path/to/new/content', 'r+'));
$file->update();
Bear in mind that updating a file name will result in a new file being generated (under the new name). You will need to delete the old file.
Copy object to new location¶
To copy a file to another location, you need to specify a string-based destination path:
$object->copy('/container_2/new_object_name');
Where container_2 is the name of the container, and new_object_name is the name of the object inside the container that does not exist yet.
Get object metadata¶
You can fetch just the object metadata without fetching the full content:
$container->getPartialObject('summer_vacation.mp4');
In order to access the metadata on a partial or complete object, use:
$object->getMetadata();
You can turn a partial object into a full object to get the content after looking at the metadata:
$object->refresh();
You can also update to get the latest metadata:
$object->retrieveMetadata();
Update object metadata¶
Similarly, with setting metadata there are two options: you can update the metadata values of the local object (i.e. no HTTP request) if you anticipate you’ll be executing one soon (an update operation for example):
// There's no need to execute a HTTP request, because we'll soon do one anyway for the update operation
$object->setMetadata(array(
'Author' => 'Hemingway'
));
// ... code here
$object->update();
Alternatively, you can update the API straight away - so that everything is retained:
$object->saveMetadata(array(
'Author' => 'Hemingway'
));
Please be aware that these methods override and wipe existing values. If you want to append values to your metadata, use the correct method:
$metadata = $object->appendToMetadata(array(
'Author' => 'Hemingway'
));
$object->saveMetadata($metadata);
Extract archive¶
CloudFiles provides you the ability to extract uploaded archives to particular destinations. The archive will be extracted and its contents will populate the particular area specified. To upload file (which might represent a directory structure) into a particular container:
use OpenCloud\ObjectStore\Constants\UrlType;
$service->bulkExtract('container_1', fopen('/home/jamie/files.tar.gz','r'), UrlType::TAR_GZ);
You can also omit the container name (i.e. provide an empty string as the first argument). If you do this, the API will create the containers necessary to house the extracted files - this is done based on the filenames inside the archive.
Delete multiple objects¶
Bulk delete a set of paths:
$pathsToBeDeleted = array('/container_1/old_file', '/container_2/notes.txt', '/container_1/older_file.log');
$service->bulkDelete($pathsToBeDeleted);


Calm Minds Spa
How do you define relaxation or rejuvenation?
For some, Utah's spectacular powder days or red rock adventures are enough to create balance and harmony as they are drawn from the freedom of carving your own lines and finding your own path after a week tied to the grid. For others, it is the healing powers, practices and teachings of yoga, modern fitness regimens, and a full menu of spa treatments. No matter where adventure takes you in Utah, you'll find first-rate relaxation and restoration amenities nearby. Come discover world-class luxury spa resorts and hotels, indulging in an escape to soothe body, mind and spirit. Relax after an 80-minute deep tissue or Swedish stone massage, bask in an ultimate mountain salt glow or recapture your youth with a Dead Sea mud mask.
About Us
Our newly renovated Cliff Spa features 21 treatment rooms, a newly designed yoga studio and an upgraded fitness center, both with mountain views. The Cliff Spa has a rooftop pool and hot tub with sensual surroundings, radiant heated decks and gas-fed fire pits with increased seating capacity. With incredible views and a eucalyptus infused environment, the solarium is the perfect place to relax. The boutique offers a range of unique Cliff Spa items, high end yoga apparel and holistic skincare. Located on the 9th and 10th floors of The Cliff Lodge, The Cliff Spa delivers the ultimate spa experience with amenities that match the mountain.
Our Facilities
- Full-service men’s and women’s locker rooms.
- A robe, sandals and private locker for each day.
- Fresh towels and grooming amenities.
- Daily yoga or movement classes (pre-registration required).
- Fitness facility featuring new workout equipment, free weights, bikes, treadmills, steppers, an elliptical trainer and rowing ergometer.
- Separate men’s and women’s dry saunas.
- Co-ed eucalyptus steam room.
- Solarium relaxation area.
- Rooftop sun deck with 15-meter swimming pool and whirlpool hot tub.
Massage Packages
The needs of our bodies fluctuate with the changing seasons. Our customized massages are designed to help maintain balance and wellness throughout the year.
Mountain Stone Massage
Hot stone therapy has long been used to promote physical healing and reconnect with nature. It helps your body melt away tension and recharge for another day in the mountains.
Duration 60/90 minutes, Price $140/$190
Gemstone Aromatherapy Energy-Balancing Massage
A deeply relaxing and subtle energy-balancing massage and body treatment where energy imbalances are gently and magically brought into alignment. The experience of organic aromas, and four distinctive gemstone-energized and herb infused oils-purify, soothe, and naturally oxygenate tissues to support overall balance in body and mind.
Duration 60/90 minutes, Price $150/$200
Events
February 20th
Grab your friends and head up to our resort for a day of fun as you improve your skiing and snowboarding skills. Bring three friends and get a 20% discount.* Our Ladies Day Clinics are tailored for women who want to improve their skiing or snowboarding skills, or learn how to ski or snowboard for the first time in a fun and friendly group atmosphere. Groups are organized based on ability levels, beginner to advanced. The ladies groups are lead and taught by our top ski and snowboard instructors who create a safe and enjoyable learning environment for everyone.
Energy and Wellness Packages
CranioSacral Healing
Relieves compression in bones of head, sacrum, and spinal column so that cerebrospinal fluid in central nervous system can be balanced. This enhances the body’s ability to heal. A very quiet, slow, gentle, and relaxing treatment.
Hotel Rooms & Rates
King Suite
Fall in love with our luxurious king suite located on scenic floors of our resort and hotel only.
Family Fun Suites
Have fun with your family while enjoying a relaxing time away, our family suites give you the option of two queen beds, a pull-out couch, and/or bunk-bed rooms.
Testimonials
The rooms are four to a cottage for most of the resort. The staff is very friendly and helpful. The rooms are decorated in a western theme that's a bit hokey, but not distasteful. There is a thick guide book in each room offering adventure activities. Not cheap. This is a great base point to get to Arches National Park. That is a must see national park.
- Anonymous


In a very helpful initiative to wean the denizens of Hooting Yard from Mrs Gubbins’ hideous prog-wop noodlings, OutaSpaceman, the legendary balladeer of Bognor, has composed and recorded a splendid song in honour of a certain out of print pamphleteer. Here it is :


| Previous Lecture | lect07 Before Slides | lect07 Annotated Slides | Next Lecture |
Code from lecture
https://github.com/ucsb-cs24-s18/cs24-s18-lectures/tree/master/lec-07
Topics
The big three - copy constructor, copy assignment destructor
Lesson plan
C++ provides a default constructor, destructor, copy constructor, copy assignment operator for any class that doesn’t have one explicitly defined.
The big three: In C++ there is a rule of thumb that states if any of the copy-constructor, copy assignment or destructor are overloaded, the others must be overloaded as well. We’s like to understand the reasoning behind this rule of thumb
The questions we ask are: 1. What is the behavior of these defaults (taking linked lists as our running example)? 2. When and why do we need to overload these? 3. What is the outcome we desire to have with the overloaded de’tor, copy con’tor and copy assignment operator for the linked list class?
Destructor
In general the destructor is invoked when a) a stack object goes out of local scope and has to be removed from memory b) delete is called on a pointer that is pointing to an object of the class on the heap
Here are two scenarios where the destructor is invoked
Case 1: ``` void foo(){ IntList l1; …. …. //l1’s destructor is called right after the function returns }
Case 2:
IntList* p = new IntList; // This line may be in any function ….. delete p; // This line may be in a function different from where the object was created with new ```
Now suppose we had a linked list object (either on the stack or the heap) that has the following elements
l1:1->2->5->null
- What is the state of memory after l1’s default destructor is called?
- Do you see a problem with the default behavior?
- How would you fix this problem?
Copy constructor
The default copy constructor copies the values of the member variables of a source object to the objects that is being created.
For we created the following linked list in memory:
l1:1->2->5->null
As far as the compiler is concerened its perfectly valid to create a new object l2 that is the copy of l1 as follows:
IntList l2(l1); // l2's copy constructor is invoked and l1 is passed as a parameter
OR
IntList l2 = l1; // l2's copy constructor is invoked and l1 is passed as a parameter
OR we could create the new object on the heap as follows
IntList* p = new IntList(l1);
In all the above cases the default copy constructor of the new object is invoked.
- What is the state of memory in each case?
- Do you see a problem with the default behavior? (Talk about shallow vs deep copy)
- How can we fix this problem?
Copy assignment operator
The default assignment operator works like the copy constructor except it copies values from one existing objectto another object that already exists
For we had two linked lists in memory:
l1:1->2->5->null
l2:10->20->50->60->null
The copy assignment operator will be invoked in all of the following cases:
l2 = l1; // l2's copy assignment is invoked and l1 is passed as a parameter
OR
l2 = l2; //l2's copy assignment is invoked and l2 is passed as a parameter!
- What is the state of memory in each case?
- Do you see a problem with the default behavior?
- How can we fix this problem? Describe the desired behavior
Fun with recursion
We will look at deleting nodes in a linked-list recursively


This is a Portlet widget, which is similar to a dijit.TitlePane, but is designed to be used with the dojox.layout.GridContainer widget. Each widget can be extended with a number of different plug in widgets, with each plug in specifying an icon to display in the title bar. (By the way, click this paragraph somewhere :-)
Two settings widgets are currently defined, dojox.widget.PortletSettings and dojox.widget.PortletDialogSettings
This Portlet is not draggable, but all others are.
This is a FeedPortlet with a single feed.
Click the settings icon in the title bar to enter a
different feed to load. Hovering over a news item shows a summary
of it in a tooltip.
OK
Change the zoom of the chart using the slider, then drag it using the mouse. This portlet uses
a dialog settings widget, click the settings icon in the title bar to see it.
Scale:
Type:
Meeting
Time:
12:00 - 13:00
Details:
Meeting about the User Interface
Type:
Meeting
Time:
09:00 - 10:30
Details:
Morning prayer for the end of life of IE6
Type:
Appointment
Time:
19:00 - 20:30
Details:
Root canal at dentist. Gonna get a candy bar!


Ukraine accuses Russia of removing weapons, toilet bowls from seized Navy ships: report
by Paulina DedajThe three Ukrainian naval ships seized by Russia in November of last year were returned Monday but officials allege that the weapons, equipment and even the toilet bowls were removed before they were handed back over.
Ukraine's navy commander Ihor Voronchenko has accused Moscow of stripping the vessels seized from the Black Sea on Nov. 25, 2018.
SON OF FORMER GERMAN PRESIDENT KILLED IN KNIFE ATTACK WHILE GIVING LECTURE IN BERLIN HOSPITAL
"[Russia] removed even dome lights, sockets, and toilet bowls," he said according to a BBC report.
Russia’s Federal Security Service denied the allegations, saying that the ships – two gunboats and a tug – were returned in “normal condition and with good plumbing,” the report continued.
The agency claimed that at the time of the handover, Ukraine agreed to the condition of the vessels by signing the documents accepting them.
FORMER US MARINE PAUL WHELAN'S ESPIONAGE CHARGES UPHELD IN RUSSIA: REPORT
Ukraine's President Volodymyr Zelensky inspected the ships Thursday and noted that some of the weapons were missing.
A Russian reporter shared a video from inside the ships that appeared to show a toilet although it was not clear when the footage was taken.
CLICK HERE TO GET THE FOX NEWS APP
The three ships were seized after Russia claimed they had violated procedures for transiting the Kerch Strait, while the Ukrainians said they were traveling in international waters.
The Russian coast guard fired shots, then captured the ships and their crew of 24 Ukrainian sailors. The sailors were detained for 10 months and returned home in September as part of a prisoner exchange.
The Associated Press contributed to this report.


Leverages the functionality of 'clipboard.js', a JavaScript library for HMTL5-based copy to clipboard from web pages (see <https://clipboardjs.com> for more information), and provides a reactive copy-to-clipboard UI button component, called 'rclipButton', for 'shiny' R applications.
| Version: | 0.1 |
| Depends: | R (≥ 3.3.0) |
| Imports: | shiny |
| Published: | 2017-07-29 |
| Author: | Sebastien Bihorel |
| Maintainer: | Sebastien Bihorel <sb.pmlab at gmail.com> |
| BugReports: | http://github.com/sbihorel/rclipboard/issues |
| License: | MIT + file LICENSE |
| URL: | http://github.com/sbihorel/rclipboard |
| NeedsCompilation: | no |
| Materials: | README |
| CRAN checks: | rclipboard results |
| Reference manual: | rclipboard.pdf |
| Package source: | rclipboard_0.1.tar.gz |
| Windows binaries: | r-devel: rclipboard_0.1.zip, r-release: rclipboard_0.1.zip, r-oldrel: rclipboard_0.1.zip |
| OS X binaries: | r-release: rclipboard_0.1.tgz, r-oldrel: rclipboard_0.1.tgz |
| Reverse imports: | spotGUI |
Please use the canonical form https://CRAN.R-project.org/package=rclipboard to link to this page.


Plausible Exclude
Click the button below to toggle your exclusion in analytics for this site
You currently
are not
are
excluding your visits.
Exclude my visits


{% extends 'base.html'%} {%block title%} Login {% endblock%} {%block content%}
Please enter your login and password!
Dont have an account?SignUp
Or reach us via:


{{subject}}
{{#threads}}
{{subject}}
{{#posts}}
{{minigroup.from}}
{{{minigroup.html}}}
View on Minigroup
{{/posts}} {{/threads}} {{^threads}}
No posts were made today.
{{/threads}}


Before Change
:return: filename_list, subjectname_list
path_file = [(p, filename)
for p in self.path_to_search
for filename in sorted(os.listdir(p))]
matching_path_file = list(filter(self.__is_a_candidate, path_file))
filename_list = \
[os.path.join(p, filename) for p, filename in matching_path_file]
subjectname_list = [self.__extract_subject_id_from(filename)
for p, filename in matching_path_file]
if not filename_list or not subjectname_list:
raise IOError("no file matched based on this matcher: {}".format(
self.__dict__))
After Change
:return: filename_list, subjectname_list
path_file = [(p, filename)
for p in self.path_to_search
for filename in os.listdir(p)]
matching_path_file = list(filter(self.__is_a_candidate, path_file))
filename_list = \
[os.path.join(p, filename) for p, filename in matching_path_file]
subjectname_list = [self.__extract_subject_id_from(filename)
for p, filename in matching_path_file]
if not filename_list or not subjectname_list:
raise IOError("no file matched based on this matcher: {}".format(
self.__dict__))


Opencast Infrastructure
List of Opencast project infrastructure and administrators. For detailed notes go here
Infrastructure
Test Servers
| Institution | Hostname | Admin (Software) | Admin (Hardware) |
|---|---|---|---|
| University of Osnabrück | develop.opencast.org | Lars Kiesow | Lars Kiesow |
| ETH Zürich | stable.opencast.org | Lars Kiesow | Waldemar Smirnow |
| Technische Universität Ilmenau | legacy.opencast.org | Lars Kiesow | Daniel Konrad |
CI Servers
| Institution | Hostname | Admin (Software) | Admin (Hardware) |
|---|---|---|---|
| University of Cologne | oc-com-admin.rrz.uni-koeln.de | Greg Logan | Ruth Lang |
| University of Cologne | oc-com-worker1.rrz.uni-koeln.de | Greg Logan | Ruth Lang |
| University of Cologne | oc-com-presentation.rrz.uni-koeln.de | Greg Logan | Ruth Lang |
Maven Repository
| Institution | Hostname | Admin (Software) | Admin (Hardware) | Notes |
|---|---|---|---|---|
| Harvard DCE | mvncache.opencast.org | Lars Kiesow | DCE Devel group | Nginx cache, AWS |
| University of Osnabrück | nexus.opencast.org | Lars Kiesow | Lars Kiesow | nexus-oss |
Nexus administration:
- Greg Logan
- Lars Kiesow
Other Hosted Services
| Institution | Hostname | Admin (Software) | Admin (Hardware) |
|---|---|---|---|
| University of Osnabrück | pkg.opencast.org | Lars Kiesow | Lars Kiesow |
| University of Cologne | ci.opencast.org | Greg Logan | Ruth Lang |
| University of Osnabrück | docs.opencast.org | Lars Kiesow | Lars Kiesow |
| University of Stuttgart | testrailoc.tik.uni-stuttgart.de | Release managers | Per Pascal Grube |
Administrators
What is an administractor, and how does that differ from a committer?
An administrator is someone within the Opencast community who has administrative access to one or more of our major tools. These tools are
- GitHub
- Google Groups
- Crowdin
While many of our administrators are committers, an administrator is not a committer by necessity. Administrators have important responsibilities within the community, but mainly work behind the scenes. These responsibilities include:
- Adding new committers to the relevant group(s)
- Removing old committers from the relevant group(s)
- Contacting support when required for hosted projects (Atlassian, Crowdin, Google)
Adding or removing Committers
While the committer body manages its own membership, it does not directly have the power to add or remove users from the appropriate groups across all of our hosted products. Administrators are required to modify the various groups in multiple places when a change is necessary. These changes are
- Modifying the GitHub committers group upon request
- Modifying the Google committers group
- Modifying the Crowdin committers group
- Modifying the list of committers on the Opencast website
Current Administrators
Administrators may not have complete access to all services, however we will coordinate to handle requests in a timely manner. If you need to contact an administrator for access to one of the services above, please contact them in this order:
- Greg Logan
- Lars Kiesow
- Olaf Schulte
Video Conferencing
- BigBlueButton
- Conference rooms
- Password: welcome
- Recordings
- Conference rooms
Other Services
Other services and the primary contact for them:
- Google
- Greg Logan
- Twitter
- Lars Kiesow
- Facebook
- Rüdiger Rolf


HALLOWEEN 5 A film review by<EMAIL_ADDRESS>Copyright 1989<EMAIL_ADDRESS>HALLOWEEN 5: THE REVENGE OF MICHAEL MYERS
You know going into any film with a numeral in the title that you're bound to be a little disappointed, but the Phantom was a bit surprised at what a state the "Halloween" series is in. Certainly he believed that the awful HALLOWEEN 3: SEASON OF THE WITCH should have killed the series once and for all, and that if the irrelevant and boring Silver Shamrock shenanigans in that film didn't do it, then the mechanical, clockwork Jasonized killings of HALLOWEEN 4: THE RETURN OF MICHAEL MYERS would be the final nail in the series' coffin. The fact that more people were involved in the making of these films than attended them should have helped the series' timely demise.
But no, it seems that neither Michael nor Mustapha (Akaad, the series' producer now that John Carpenter is long gone) can be stopped. And yet the Phantom finds that he himself can't stop going; he was hooked at the tender age of 14 and has made it a lifelong habit. He faithfully attends opening night showings of even the most horrible horror film, in the hope that *this* one will be an unexpected pleasure, this year's HELLRAISER or EVIL DEAD. But HALLOWEEN 5 raises no hell, and it's a toss-up as to what's more dead about the film: the plot, the script, or Donald Pleasence's performance.
If by now you get the feeling that the Phantom was less than satisfied with the latest "Halloween," well, you're right. But the film has it's good points, and although they aren't enough to salvage the film, they do make watching it a little more enjoyable (or at least tolerable).
The camera work and cinematography are good and inventive (as they were in HALLOWEEN 4). Although there are far too many false alarms, most of Michael's scenes are well set up; unlike the "Friday the 13th" series, wherein people are dispatched left and right by an all but unseen Jason, the "Halloween" series has always had Michael skulk around a bit before getting down to business. This adds greatly to the suspense, and some of the scenes in HALLOWEEN 5 are done with nearly as much flair as the original HALLOWEEN. The opening credits are also very nicely done; it's a shame that no one spent as much time on the rest of the film as was spent on its first 90 seconds.
But the film (and the series) looks tired; the producers are just going through the motions now, hoping to spend as little as possible on each film and just enough on advertising to promote sufficient video sales and rentals to turn a profit. Worse, the film has one of the most bogus endings of any in recent memory. To those concerned with spoilers, let me just say that there's a tall man dressed in black who steps off a bus mid way through the film and that he doesn't help matters any. To anyone planning to see HALLOWEEN 5, the Phantom strongly recommends getting up and leaving the theater just before the final scene; you'll be glad you did. If you hang around the concession stand, you'll be able to hear clearly the audience's collective reaction to the scene you missed, aptly summarized by a greatly underaged boy in the audience: "Aw man, that's bullsh*t."
If it weren't for that final scene, the Phantom would have given HALLOWEEN 5 a star and half (out of 4), but Michael sends us all home with such an air of disappointment that 1 star is all it deserves.
Better to wait for this one to hit your local Blockbusters and save your money for SHOCKER, Wes Craven's latest due out a few days before Halloween. This one looks very good; it looks like Craven is trying to recreate the success he had with the original A NIGHTMARE ON ELM STREET. And since NIGHTMARE 5 was so disappointing, the Phantom is glad that Craven is coming back to remind us all how good a horror film can be.
Also on the horizon is Robert Englund in PHANTOM OF THE OPERA (the ads for which prominently display a disclaimer to the effect that the film is not based upon any previous "Phantom of the Opera" film, stage show, or book); it's due out a week after SHOCKER, but it doesn't look nearly as promising, not the least because Menachem Golan, half of the now defunct Cannon Films, is associated with the film.
The Phantom will be back in a couple of weeks with reviews for both. Until then, he welcomes Phan mail from anyone interested in the, shall we say, non-mainstream films he so loves.
: The Phantom<EMAIL_ADDRESS>: {cmcl2,uunet}!esquire!baumgart
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Extract the eclipse download and move to opt:
tar xvzf eclipse*.tar.gz sudo mv eclipse /opt/eclipse
Then create an eclipse executable in your path:
sudo touch /usr/bin/eclipse sudo chmod 755 /usr/bin/eclipse sudo gedit /usr/bin/eclipse
with this contents:
#!/bin/sh export ECLIPSE_HOME="/opt/eclipse" $ECLIPSE_HOME/eclipse $*
Then create a gnome menu item:
sudoedit /usr/share/applications/eclipse.desktop
with this contents:
[Desktop Entry] Encoding=UTF-8 Name=Eclipse Comment=Eclipse IDE Exec=eclipse Icon=/opt/eclipse/icon.xpm Terminal=false Type=Application Categories=GNOME;Application;Development; StartupNotify=true
You now have a working eclipse, but run this command first to initialise the set up:
/opt/eclipse/eclipse -clean


node-pre-gyp changelog
0.6.39
- Support for node v9
- Support for versioning on
{libc}
to allow binaries to work on non-glic linux systems like alpine linux
0.6.38
- Maintaining compatibility (for v0.6.x series) with node v0.10.x
0.6.37
- Solved one part of #276: now now deduce the node ABI from the major version for node >= 2 even when not stored in the abi_crosswalk.json
- Fixed docs to avoid mentioning the deprecated and dangerous
prepublish
in package.json (#291)
- Add new node versions to crosswalk
- Ported tests to use tape instead of mocha
- Got appveyor tests passing by downgrading npm and node-gyp
0.6.36
- Removed the running of
testbinary
during install. Because this was regressed for so long, it is too dangerous to re-enable by default. Developers needing validation can call node-pre-gyp testbinary
directory.
- Fixed regression in v0.6.35 for electron installs (now skipping binary validation which is not yet supported for electron)
0.6.35
- No longer recommending
npm ls
in prepublish
(#291)
- Fixed testbinary command (#283) @szdavid92
0.6.34
- Added new node versions to crosswalk, including v8
- Upgraded deps to latest versions, started using
^
instead of ~
for all deps.
0.6.33
- Improved support for yarn
0.6.32
- Honor npm configuration for CA bundles (@heikkipora)
- Add node-pre-gyp and npm versions to user agent (@addaleax)
- Updated various deps
- Add known node version for v7.x
0.6.31
0.6.30
- Update to<EMAIL_ADDRESS>and<EMAIL_ADDRESS>- Add known node version for v6.5.0
0.6.29
- Add known node versions for v0.10.45, v0.12.14, v4.4.4, v5.11.1, and v6.1.0
0.6.28
- Now more verbose when remote binaries are not available. This is needed since npm is increasingly more quiet by default
and users need to know why builds are falling back to source compiles that might then error out.
0.6.27
- Add known node version for node v6
- Stopped bundling dependencies
- Documented method for module authors to avoid bundling node-pre-gyp
- See https://github.com/mapbox/node-pre-gyp/tree/master#configuring for details
0.6.26
- Skip validation for nw runtime (https://github.com/mapbox/node-pre-gyp/pull/181) via @fleg
0.6.25
- Improved support for auto-detection of electron runtime in
node-pre-gyp.find()
- Pull request from @enlight - https://github.com/mapbox/node-pre-gyp/pull/187
- Add known node version for 4.4.1 and 5.9.1
0.6.24
- Add known node version for 5.8.0, 5.9.0, and 4.4.0.
0.6.23
- Add known node version for 0.10.43, 0.12.11, 4.3.2, and 5.7.1.
0.6.22
- Add known node version for 4.3.1, and 5.7.0.
0.6.21
- Add known node version for 0.10.42, 0.12.10, 4.3.0, and 5.6.0.
0.6.20
- Add known node version for 4.2.5, 4.2.6, 5.4.0, 5.4.1,and 5.5.0.
0.6.19
- Add known node version for 4.2.4
0.6.18
- Add new known node versions for 0.10.x, 0.12.x, 4.x, and 5.x
0.6.17
- Re-tagged to fix packaging problem of
Error: Cannot find module 'isarray'
0.6.16
- Added known version in crosswalk for 5.1.0.
0.6.15
- Upgraded tar-pack (https://github.com/mapbox/node-pre-gyp/issues/182)
- Support custom binary hosting mirror (https://github.com/mapbox/node-pre-gyp/pull/170)
- Added known version in crosswalk for 4.2.2.
0.6.14
0.6.13
- Added more known node 4.x versions
0.6.12
- Added support for Electron. Just pass the
--runtime=electron
flag when building/installing. Thanks @zcbenz
0.6.11
- Added known node and io.js versions including more 3.x and 4.x versions
0.6.10
- Added known node and io.js versions including 3.x and 4.x versions
- Upgraded
tar
dep
0.6.9
- Upgraded
rc
dep
- Updated known io.js version: v2.4.0
0.6.8
- Upgraded
semver
and rimraf
deps
- Updated known node and io.js versions
0.6.7
- Fixed
node_abi
versions for io.js 1.1.x -> 1.8.x (should be 43, but was stored as 42) (refs https://github.com/iojs/build/issues/94)
0.6.6
- Updated with known io.js 2.0.0 version
0.6.5
- Now respecting
npm_config_node_gyp
(https://github.com/npm/npm/pull/4887)
- Updated to<EMAIL_ADDRESS>- Updated known node v0.12.x versions and io.js 1.x versions.
0.6.4
- Improved support for
io.js
(@fengmk2)
- Test coverage improvements (@mikemorris)
- Fixed support for
--dist-url
that regressed in 0.6.3
0.6.3
- Added support for passing raw options to node-gyp using
--
separator. Flags passed after
the --
to node-pre-gyp configure
will be passed directly to gyp while flags passed
after the --
will be passed directly to make/visual studio.
- Added
node-pre-gyp configure
command to be able to call node-gyp configure
directly
- Fix issue with require validation not working on windows 7 (@edgarsilva)
0.6.2
- Support for io.js >= v1.0.2
- Deferred require of
request
and tar
to help speed up command line usage of node-pre-gyp
.
0.6.1
- Fixed bundled
tar
version
0.6.0
- BREAKING: node odd releases like v0.11.x now use
major.minor.patch
for {node_abi}
instead of NODE_MODULE_VERSION
(#124)
- Added support for
toolset
option in versioning. By default is an empty string but --toolset
can be passed to publish or install to select alternative binaries that target a custom toolset like C++11. For example to target Visual Studio 2014 modules like node-sqlite3 use --toolset=v140
.
- Added support for
--no-rollback
option to request that a failed binary test does not remove the binary module leaves it in place.
- Added support for
--update-binary
option to request an existing binary be re-installed and the check for a valid local module be skipped.
- Added support for passing build options from
npm
through node-pre-gyp
to node-gyp
: --nodedir
, --disturl
, --python
, and --msvs_version
0.5.31
- Added support for deducing node_abi for node.js runtime from previous release if the series is even
- Added support for –target=0.10.33
0.5.30
- Repackaged with latest bundled deps
0.5.29
- Added support for semver
build
.
- Fixed support for downloading from urls that include
+
.
0.5.28
- Now reporting unix style paths only in reveal command
0.5.27
- Fixed support for auto-detecting s3 bucket name when it contains
.
- @taavo
- Fixed support for installing when path contains a
'
- @halfdan
- Ported tests to mocha
0.5.26
- Fix node-webkit support when
--target
option is not provided
0.5.25
0.5.24
- Updated ABI crosswalk to incldue node v0.10.30 and v0.10.31
0.5.23
- Added
reveal
command. Pass no options to get all versioning data as json. Pass a second arg to grab a single versioned property value
- Added support for
--silent
(shortcut for --loglevel=silent
)
0.5.22
- Fixed node-webkit versioning name (NOTE: node-webkit support still experimental)
0.5.21
- New package to fix
shasum check failed
error with v0.5.20
0.5.20
- Now versioning node-webkit binaries based on major.minor.patch - assuming no compatible ABI across versions (#90)
0.5.19
- Updated to know about more node-webkit releases
0.5.18
- Updated to know about more node-webkit releases
0.5.17
- Updated to know about node v0.10.29 release
0.5.16
- Now supporting all aws-sdk configuration parameters (http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/node-configuring.html) (#86)
0.5.15
- Fixed installation of windows packages sub directories on unix systems (#84)
0.5.14
- Finished support for cross building using
--target_platform
option (#82)
- Now skipping binary validation on install if target arch/platform do not match the host.
- Removed multi-arch validing for OS X since it required a FAT node.js binary
0.5.13
- Fix problem in 0.5.12 whereby the wrong versions of mkdirp and semver where bundled.
0.5.12
- Improved support for node-webkit (@Mithgol)
0.5.11
- Updated target versions listing
0.5.10
- Fixed handling of
-debug
flag passed directory to node-pre-gyp (#72)
- Added optional second arg to
node_pre_gyp.find
to customize the default versioning options used to locate the runtime binary
- Failed install due to
testbinary
check failure no longer leaves behind binary (#70)
0.5.9
- Fixed regression in
testbinary
command causing installs to fail on windows with 0.5.7 (#60)
0.5.8
0.5.7
- Fixed the
testbinary
check, which is used to determine whether to re-download or source compile, to work even in complex dependency situations (#63)
- Exposed the internal
testbinary
command in node-pre-gyp command line tool
- Fixed minor bug so that
fallback_to_build
option is always respected
0.5.6
- Added support for versioning on the
name
value in package.json
(#57).
- Moved to using streams for reading tarball when publishing (#52)
0.5.5
- Improved binary validation that also now works with node-webkit (@Mithgol)
- Upgraded test apps to work with node v0.11.x
- Improved test coverage
0.5.4
- No longer depends on external install of node-gyp for compiling builds.
0.5.3
- Reverted fix for debian/nodejs since it broke windows (#45)
0.5.2
- Support for debian systems where the node binary is named
nodejs
(#45)
- Added
bin/node-pre-gyp.cmd
to be able to run command on windows locally (npm creates an .npm automatically when globally installed)
- Updated abi-crosswalk with node v0.10.26 entry.
0.5.1
- Various minor bug fixes, several improving windows support for publishing.
0.5.0
- Changed property names in
binary
object: now required are module_name
, module_path
, and host
.
- Now
module_path
supports versioning, which allows developers to opt-in to using a versioned install path (#18).
- Added
remote_path
which also supports versioning.
- Changed
remote_uri
to host
.
0.4.2
- Added support for
--target
flag to request cross-compile against a specific node/node-webkit version.
- Added preliminary support for node-webkit
- Fixed support for
--target_arch
option being respected in all cases.
0.4.1
- Fixed exception when only stderr is available in binary test (@bendi / #31)
0.4.0
- Enforce only
https:
based remote publishing access.
- Added
node-pre-gyp info
command to display listing of published binaries
- Added support for changing the directory node-pre-gyp should build in with the
-C/--directory
option.
- Added support for S3 prefixes.
0.3.1
- Added
unpublish
command.
- Fixed module path construction in tests.
- Added ability to disable falling back to build behavior via
npm install --fallback-to-build=false
which overrides setting in a depedencies package.json install
target.
0.3.0
- Support for packaging all files in
module_path
directory - see app4
for example
- Added
testpackage
command.
- Changed
clean
command to only delete .node
not entire build
directory since node-gyp will handle that.
.node
modules must be in a folder of there own since tar-pack will remove everything when it unpacks.


Trump Surprises Louisiana Rally with Duck Dynasty Stars
President Donald Trump surprised his rally in Lousiana with an appearance by Phil and Willie Robertson from the popular reality TV show Duck Dynasty.
by Charlie SpieringThe president called them both up on stage to speak to the crowd about the upcoming Louisiana election for governor.
“Duck Commander” Phil Robertson explained why he was supporting Republican candidate Eddie Rispone.
“I got it down to this. If you’re pro-God, pro-America, and pro-gun and pro-duck hunting, that’s all I want!” Robertson said briefly to the cheering crowd.
Willie Robertson thanked all of the Trump supporters present at the arena.
“You’ve been such a great community to share life with, to worship with, and I’m so tickled to be here with the president, that he actually came down to our community,” he said. “Let’s go, Eddie!”
Trump reminded the crowd that both stars endorsed his campaign for president, prompting him to watch their show Duck Dynasty.
“I started watching a little bit,” he said. “A lot of wisdom there.”
The rally took place in Monroe, Lousiana, at the Monroe Civic Center.
Trump supporters began gathering for the rally on Tuesday afternoon, according to local reports. More than 40,000 people requested tickets, as the center holds between 7,500 to 10,000 people.
The president urged his supporters to vote early in the governor’s race and said that he would return to the state next week to campaign for Rispone.