IDL 7.1.1 Release Notes
The IDL 7.1.1 release addresses several issues found in the IDL 7.1 release. Aside from these fixes, there are no new features in IDL 7.1.1 beyond those present in IDL 7.1.
The information found in these release notes is separated into the following sections:
ID numbers are included where applicable to allow ITT Visual Information Solutions to respond to inquiries more easily.
Problems Corrected in IDL 7.1.1
All Platforms
|
ID
|
Description
|
|
56049
|
GET_DECOMPOSED keyword not working for PostScript device
|
|
IDL 7.1 introduced the ability to create TrueColor plots in the PostScript (PS) device by setting the DECOMPOSED keyword to the DEVICE procedure. The ability to retrieve the state the decomposed color setting using the GET_DECOMPOSED keyword to the DEVICE procedure was documented, but not implemented in IDL 7.1. In IDL 7.1.1, you can use the GET_DECOMPOSED keyword with the PostScript device to retrieve the state of the decomposed color setting.
|
|
56067
|
DIALOG_PICKFILE cannot handle Unicode characters in filenames
|
|
The DIALOG_PICKFILE function has been enhanced to properly handle UTF-8 and Unicode characters in filenames returned from the native operating system.
|
|
56160
|
IDL crashes on Exit after repeated load of DLMs and session reset
|
|
In IDL 7.1, if a dynamically loadable module (DLM) was loaded and the IDL session was reset using the .FULL_RESET_SESSION executive command, IDL would crash when exiting the session. This has been corrected in IDL 7.1.1.
|
Windows Platforms
|
ID
|
Description
|
|
55883 56382
|
WIDGET_TAB labels missing or drawn incorrectly
|
|
IDL 7.1 enabled the use of Windows "styles," which allow IDL widgets to respect the user interface theme settings of the Windows computer on which IDL is running. Unfortunately, Windows styles do not directly support the placement of widget tabs on the sides or bottom of the widget, as specified by the LOCATION keyword to the WIDGET_TAB function. IDL 7.1.1 allows tabs to be drawn correctly in all positions.
|
|
56008
|
IDL crashes on Tree widget drop event
|
|
IDL 7.1 would crash when dragging from a node of a WIDGET_TREE widget to the drawable area of a WIDGET_DRAW widget. This has been corrected in IDL 7.1.1.
|
|
56158
|
Slider drag events not working
|
|
IDL 7.1 enabled the use of Windows "styles," which allow IDL widgets to respect the user interface theme settings of the Windows computer on which IDL is running. This change revealed a problem in which slider drag events were not properly generated when Windows styles were in use. This has been corrected in IDL 7.1.1.
|
|
56545
|
FILE_SEARCH fails with UTF8 directory names and MARK_DIRECTORY
|
|
In IDL 7.1, the FILE_SEARCH function would erroneously report no matches when a directory name contained UTF-8 characters and the MARK_DIRECTORY keyword was set. This has been corrected in IDL 7.1.1.
|
|
56558 56575
|
Problems opening files whose paths contain multibyte characters
|
|
When IDL attempts to open a file or use a path name that contains characters not included in the UTF-8 character set, it will now attempt to interpret the name using the local machine's default character set. In general, this allows IDL to open files whose paths include multibyte characters.
Some third-party file format libraries included with IDL may still experience problems. Libraries that handle file operations internally (as opposed to requesting that IDL perform the file operation) still may not be able to interpret some multibyte character strings created on a Windows system running in a different language. TIFF, JPEG2000, and the Scientific Data Formats are among the affected file format libraries.
|
UNIX Platforms
|
ID
|
Description
|
|
56520
|
DIALOG_PICKFILE with DEFAULT_EXTENSION and scalar FILTER
|
|
In IDL 7.1 on UNIX platforms, using the DIALOG_PICKFILE function and specifying a default extension along with a scalar filename filter would cause IDL to exit. Specifying an array of strings for the filename filter (even a single-element string array) avoided the problem. This has been corrected in IDL 7.1.1.
|
Macintosh Platforms
|
ID
|
Description
|
|
56157
|
Workbench losing focus when manipulating files in the Editor window
|
|
In IDL 7.1 on some Macintosh OS X systems, the IDL Workbench editor would intermittently become unresponsive. This problem was corrected in the IDL 7.1.1 Workbench updated, released in June 2009; the same fix is included in the full IDL 7.1.1 release.
Note - If you have already installed the IDL 7.1.1 Workbench update and are not experiencing any of the other problems addressed by the IDL 7.1.1 release, you do not need to update your IDL installation to IDL 7.1.1.
|
New Features in IDL 7.1
For information on new features in this release, see the What's New in IDL 7.1 manual. What's New is included in the IDL online help system under the heading "About IDL".
Backward-Compatibility Issues in IDL 7.1
All Platforms
|
ID
|
Description
|
|
n/a
|
IDL Workspace Migration
|
|
IDL does not automatically update the IDL workspace between releases. Since the workspace stores data about the views and perspectives used by the IDL Workbench, changes or additions to the IDL Workbench interface require that you choose how to manage your IDL workspace. After upgrading to a new IDL version, you have the following options:
1. Create a new workspace for use with the new IDL version. You will need to reset any IDL Workbench preferences you may have set in the old version.
2. Continue using the old workspace without modification. New views and perspectives may not be available.
3. Use the Window → Open Perspective... → Visualize menu option to update the workspace to see the new views and perspectives.
|
|
n/a
|
IDL Core Preference Migration
|
|
IDL does not automatically migrate IDL core preferences between releases. After upgrading IDL to a new version, you have two options:
1. Re-set any IDL core preferences you wish to use with the new IDL version by hand, either using the Preferences dialog or the PREF_SET routine.
2. Run the PREF_MIGRATE routine from the IDL command line to migrate preferences to the new IDL version.
|
|
n/a
|
Third-party IDL Workbench Plug-ins are not Present After Upgrade
|
|
IDL 7.1 is installed in a location separate from any previous IDL installation. As a result, if you have installed third-party IDL Workbench plug-ins in your existing IDL installation, they will not be available after the IDL 7.1 upgrade is installed. You will need to reinstall the third-party plug-ins to use them with IDL 7.1.
Additionally, if you install IDL 7.1 and then start the IDL Workbench using the same workspace used with the older IDL version, you may see an error stating that the workbench layout could not be restored. This error reflects the fact that the third-party plug-ins are no longer available to the IDL Workbench. The error will appear only the first time you start the IDL Workbench, and only if you are using the same workspace as used with the previous IDL version.
|
|
54641
|
IDL Localization and LOCALE_GET
|
|
In previous versions of IDL on Unix platforms, the LOCALE_GET function would always return "C", regardless of the user's environment settings. Now, on all platforms, LOCALE_GET will return the value for the LC_CTYPE locale category.
Note - IDL continues to use the "C" locale internally, regardless of the user's environment setting.
|
|
44008
|
Export Bridges: IDL Error State and Successful Method Return
|
|
If your client creates an instance of a COM/Java Export Bridge wrapper object, and calls an object method whose code throws an error, the wrapped method will return an error unless the referenced code resets the internal IDL error state.
In this circumstance, it is best if the wrapped code catches its own error, handles it, and resets the IDL error state. You can reset the IDL error state in the error handling catch block by calling the MESSAGE procedure:
MESSAGE, /RESET
This procedure call sets the !ERROR_STATE system variable back to the "success" state.
|
|
48917 49373 55393
|
Breakpoints in Files Opened via Links, Shortcuts, or Alternate Paths
|
|
To improve performance, IDL always compiles the first version of a file it finds in its path. If you open a file in the editor and set a breakpoint, then compile from a version of the same file with a different path, IDL will not assume that the two files are the same. As a result, IDL will not stop at the breakpoint set in the second file.
Alternate paths to the same file can be constructed via UNIX links, Windows shortcuts, mapped drives, or UNC paths.
Workaround: Make sure that the full path to the file in which you set the breakpoint is the same as the full path to the compiled file. If you use the IDL Workbench, compiling using the Workbench menus or toolbars will ensure that the same path is used for compilation and debugging.
|
|
49528
|
!PATH Seems to Change on its own
|
|
By default, the IDL Workbench manages the value of !PATH so that files in your project directories are found. The consequences of this automatic management may be unexpected, especially if you also modify the value of !PATH manually. See "IDL Path Management" in the IDL online help system for a detailed explanation.
|
|
51757
|
UNSHARP_MASK Gaussian filter definition
|
|
In IDL versions prior to 7.1, the UNSHARP_MASK routine defined the Gaussian filter as:
|
|
52055
|
Signed integers returned by READ_TIFF
|
|
In IDL versions prior to 7.0.6, the READ_TIFF routine incorrectly returned signed 32-bit integers for TIFF files that contained unsigned 32-bit integers. As of version 7.0.6, READ_TIFF correctly returns unsigned 32-bit integers.
|
|
52363
|
Change in rendered font size of IDLgrText objects
|
|
IDL 7.0.6 updates the library that renders IDLgrText objects. The new library corrects several long-standing errors in rendering the text strings; the result is that rendered text may appear slightly smaller than in previous releases.
|
|
n/a
|
New Process for Debugging Shared Library Code
|
|
Beginning with IDL 7.0, when the IDL Workbench is running there are two processes to which you can connect your debugger: the IDL Workbench (idlde ) and the IDL out-of-process server (idl_opserver ). The idl_opserver is the IDL process that runs the IDL interpreter and loads shared libraries (DLMs). To debug your shared library code, you need to attach your debugger (gdb, Visual Studio, etc.) to the idl_opserver process. On Windows, using Visual Studio, you can select Attach to Process and choose the idl_opserver.exe process. On Unix, using gdb or dbx , you can use the ps command to retrieve the ID of the idl_opserver process, and then attach your debugger to that process ID.
If you are not using the IDL Workbench, continue to connect to the idl process.
|
UNIX Platforms
|
ID
|
Description
|
|
55315
|
Tool Palette and IDL Help Can Run Slowly or Run Out of Memory
|
|
On some older Linux and Solaris Sparc systems, views in the IDL Workbench Visualize perspective and the IDL help system may appear to run slowly. IDL may also generate out-of-memory errors.
Workaround: These problems appear to be related to the XULRunner library, which is used by the IDL Workbench and the IDL help system to display rich content. To disable IDL's use of the XULRunner library, set the IDL_NO_XULRUNNER environment variable before running IDL. (The value of the environment variable is not important, only that it is set or unset.) For shells using C-shell syntax, issue the following commands:
|
Problems Corrected in IDL 7.1
All Platforms
|
ID
|
Description
|
|
48165
|
Deleting Linked Folders Does Not Update !path or IDL_PATH
|
|
When a linked folder is deleted from a project, the folder is now correctly removed from the !path system variable and the IDL_PATH system preference.
|
|
48331 49528 49685 49860 51634 51635 51636 51648 51722
|
Problems with Automatic Path Management in the IDL Workbench
|
|
The IDL Workbench 7.0.3 update modified the way the IDL Workbench manages IDL's search path for managed projects. The key changes are:
- The IDL Workbench no longer changes the value of the IDL_PATH preference.
- The IDL Workbench no longer overwrites the value of the !PATH system variable. If you change the value of the !PATH system variable, the IDL Workbench will add entries for managed projects at the end of the path specification as described below, but it will not remove any entries.
- If a workbench project has the Update IDL path when project is opened or closed preference set, the project is considered to be a managed project. For managed projects:
If the managed project is open, the IDL Workbench will ensure that the project directory is included in the list of directories specified by the !PATH system variable. If the directory is not present in !PATH, it will be added at the end of the path specification.
If the managed project is closed, the IDL Workbench will remove the project directory from the list of directories specified by the !PATH system variable unless the project directory is also specified by the IDL_PATH preference.
For details, see "IDL Path Management" in the IDL online help.
|
|
49115
|
WSHOW does not position graphics window in front of IDL Workbench
|
|
If a graphics window is obscured by the IDL Workbench, executing the WSHOW command now correctly brings the window in front of the Workbench.
|
|
49779
|
Undefined variables or other runtime errors do not trigger the Debug perspective switch
|
|
Running an IDL program that contains an undefined variable generates the correct error in the Console view, and now correctly triggers the "perspective switch" dialog.
|
|
49897
|
Some items on the File → New menu are missing in the Debug perspective
|
|
All appropriate menu items are now shown on the File → New menu when the IDL Workbench is in the Debug perspective.
|
|
49898
|
Executing an example from the IDL help system fails if using Safari
|
|
IDL allows the user to execute blocks of code from within the help system. On Macintosh systems using the Safari browser to display help content, code blocks containing more than a single line now execute correctly.
|
|
50199
|
Unable to correctly paste text into the command line with text already present
|
|
If you paste text onto the end of text that already exists in the command line, IDL now correctly executes both the original text and the new text. Additionally, you can now drag text to the command line and specify the insertion point of the new text.
|
|
50209
50210
50212
|
When building a main project that includes references to external projects, the final .sav file does not include the compiled routines from the external projects
|
|
In several situations, building a project with external project references would result in a .sav file that did not contain the routines from the referenced projects.
This problem was corrected in IDL 7.0.3. Specifically, the project build process has been changed so that referenced projects are built first, and the compiled code is written to intermediate .sav files. The main project restores the referenced project .sav files before it compiles its own code, so that the main project .sav file contains code from both the main project and from the referenced project .sav files.
|
|
50220
|
INTERPOLATE routine performance slower in IDL 7.0 than in IDL 6.4
|
|
The performance of the INTERPOLATE routine was slower in IDL 7.0 than in IDL 6.4. This was corrected in IDL 7.0.1.
|
|
50258
|
During a project build, too little status information is sent to the Console view
|
|
Additional status updates are now sent to the Console view during the project build process.
|
|
50397
|
HEAP_GC Incorrectly Frees Pointers and Objects in Temporary Variables
|
|
The HEAP_GC routine now checks temporary variables for object references and pointers before freeing heap variables,
|
|
50408
|
EXIT routine sometimes causes IDL 7.0 Workbench to crash
|
|
In IDL 7.0.0, calling the EXIT routine from a widget program or with the /NO_CONFIRM keyword set would sometimes cause the IDL Workbench to terminate improperly. This was corrected in IDL 7.0.1.
|
|
50820
|
Keyboard input to an Editor view is disabled after a copy of the view is made with the Window → New Editor command
|
|
If an Editor view is open and active, and you select Window → New Editor, a copy of the Editor view is created. If you close the new Editor view, focus returns to the previous Editor view and keyboard input is accepted in that view.
|
|
50981
|
Some non-English invocations of the IDL Workbench do not recognize the command history recall buffer file
|
|
French and Japanese invocations of the IDL Workbench could not read the ~/.idl/itt/rbuf/history file. This was corrected in IDL 7.0.3.
|
|
51068
|
DEPTH_CUE Keyword of IDLgrVolume Does Not Work as Documented
|
|
Objects for which depth cueing is enabled now correctly fade to the background color, rather than fading to black. In addition, depth cueing now behaves correctly regardless of the value of the ZCLIP property of the IDLgrView object that contains the volume.
|
|
51323
|
32-bit Limit on Rendered Volumes
|
|
When IDL runs in 64-bit mode, the IDLgrVolume object can now render volumes that contain up to 264 voxels. Note that each dimension of the volume is limited to a maximum of 232 elements.
|
|
51514
|
IDL-Java Bridge now Configured Automatically
|
|
The IDL-Java connectivity bridge is now automatically configured to use the Java Runtime Environment (JRE) included with IDL. If the IDLJAVAB_LIB_LOCATION environment variable is not set when IDL starts, it is set to point to the included JRE. If the IDLJAVAB_LIB_LOCATION environment variable is set when IDL starts the value is not changed.
|
|
n/a
|
HDF library version update
|
|
IDL 7.1 includes HDF library version 4.2r3. There are no changes to the IDL HDF API as a result of this library upgrade.
|
|
n/a
|
IDL Workbench: Code Parser Speed Improvement
|
|
The speed of the initial parsing of IDL code in IDL's path was improved in the IDL 7.0.1 release.
|
Windows Platforms
|
ID
|
Description
|
|
49389
|
Windows and Dialogs opened by IDL Can Display Behind the Workbench
|
|
Windows are now correctly opened in front of the IDL Workbench.
|
UNIX Platforms
|
ID
|
Description
|
|
50188
|
WIDGET_TEXT background is white instead of gray on Solaris and Linux
|
|
In IDL 7.0.0, the Idl*background and Idl*foreground X resource values were inadvertently removed from the idl X resource file. This was corrected in IDL 7.0.1.
|
Macintosh Platforms
|
ID
|
Description
|
|
47334
|
Java Bridge: Macintosh uses a different version of Java demo_world example
|
|
A java incompatibility on Macintosh caused the demo_world example to work incorrectly. This problem has been corrected.
|
|
48280
|
CDF Routines Read Data Incorrectly on Intel-based Macintosh
|
|
The version of the CDF library included with IDL 7.0 did not correctly adjust for the little-endian byte ordering used by Intel-based Macintoshes. The CDF library version was updated in IDL 7.0.4, and now works correctly on all systems.
|
|
49844
|
Creation of Semaphores Fails under Mac OS X 10.5
|
|
In IDL 7.0, creation of semaphores (using the SEM_CREATE routine) failed under Macintosh OS X 10.5 (Leopard) if semaphore names were longer than 24 characters. This restriction was lifted in IDL 7.0.4.
|
|
49849
|
Starting the DICOM Storage Service Displays Numerous Error Messages
|
|
In previous versions, starting the DICOM Network Storage service displayed numerous error messages in the IDL terminal window. The errors looked like:
|
|
49898
|
Executing an example from the IDL help system fails if using Safari
|
|
IDL allows the user to execute blocks of code from within the help system. On Macintosh systems using the Safari browser to display help content, code blocks containing more than a single line now execute correctly.
|
|
51198 51412
|
CURSOR/RDPIX Procedures not Working Correctly on OS X
|
|
Due to a problem in Macintosh OS X version 10.5 (Leopard), in IDL 7.0, the CURSOR and RDPIX procedures did not function correctly on machines running that version of the operating system. This problem was corrected in IDL 7.0.4.
|
|
51478
|
The Ctrl-Space method of accessing Content Assist does not work on the IDLDoc preferences page on Macintosh platforms
|
|
For Macintosh platforms, when editing in the Routine Comments and File Comments tabs on the IDLdoc preferences page, typing Ctrl-Space did not activate Content Assist. This problem has been corrected.
|
Known Problems in IDL 7.1
All Platforms
|
ID
|
Description
|
|
38654
|
MAP_PROJ_INIT with GCTP Projection Corrupts Values Cached by Earlier Map Projection
|
|
If you use the MAP_PROJ_INIT function to generate and save a !MAP structure for use in later calls to other mapping routines, and then call MAP_PROJ_INIT again before using the saved structure, some of the projection values may be corrupted when using a GCTP projection.
Workaround: Perform all actions using the saved !MAP structure before making a subsequent call to MAP_PROJ_INIT.
|
|
40768
|
Firewall Can Catch Socket Communication between IDL and the Help System
|
|
IDL and its help systems (both the current help viewer and the older IDL Assistant help viewer) communicate via sockets, and some firewalls might question this communication. IDL is not trying to access the Internet; the communication is strictly between IDL and its locally installed help systems. If prompted to allow or deny the communication, you should allow it; otherwise, you will not be able to see or use IDL's online help. You might need to configure your firewall software to allow the communication.
|
|
42545
|
WIDGET_TREE Drop Event Can Cause IDL to Crash if an Error Exists in the DRAG_NOTIFY Callback Routine
|
|
A tree widget can be configured to support drag and drop functionality. This functionality includes a callback to either the default callback routine, which provides information about where a node can be dropped, or a callback to a custom callback routine that is specified using the DRAG_NOTIFY keyword. In either case, the parent WIDGET_TREE function calls the child callback routine and the IDL processing focus switches to the callback routine. If there is an error (such as an undefined variable) in the custom callback routine, IDL may freeze or crash since the error halts execution in the child routine and IDL is unable to return to the calling function.
Workaround: Handle potential problems in the callback routine by including CATCH statements in the code you are developing. See the documentation topic "Responding to Drag Notifications (Callbacks)" for more information.
|
|
43054
|
Java Export Bridge: Hardware Rendering Not Supported By All Video Cards
|
|
When running IDL applications through the Java Export Bridge, some video cards on some systems experience problems that prevent them from rendering graphics properly. As a result, the Java Export Bridge creates applications that use IDL's built-in (software) renderer by default. Even systems that use hardware rendering successfully when running IDL itself can experience the problem when running the Java Export Bridge.
Workaround: If you know that the target system for your application will display graphics properly using hardware rendering, you can explicitly set the renderer in the Init method for your application. Since a graphical application must inherit (directly or indirectly) from the IDLgrWindow class, you can set the RENDERER property equal to 0 to force the use of hardware (OpenGL) rendering if it is available. Note that the RENDERER property is not exported by the Export Bridge Assistant; the value must be hard-coded in your IDL object code.
|
|
43116
|
Text Annotations Added During Macro Creation Are Incorrectly Placed or Missing
|
|
The iTools let you create a macro that records the operations that occur within a visualization window. If you add a text annotation during macro recording and close the annotation operation by clicking on the view instead of pressing the Enter key, an additional translation event is added to the macro. This causes the text annotation to be incorrectly placed when you run the macro.
Workaround: Always close the creation of a text annotation by pressing the Enter key (instead of by clicking on the view) when recording a macro in an iTool window.
|
|
43808
|
Export Bridges: IDL Error Codes May Change Between Releases
|
|
Both the COM and Java Export Bridges allow you to catch and respond to errors generated by IDL. Errors are returned from IDL in the form of error codes, corresponding to the value of the !ERROR_STATE.CODE system variable field.
The code used to designate a specific IDL error condition can change from one release of IDL to another. As a result, COM or Java code you write that reacts to a specific error code value may behave differently with different IDL releases.
|
|
43850
|
Java Export Bridge: Error if Non-Drawable Object Instantiated First
|
|
If you create a Java application that incorporates both drawable and non-drawable IDL wrapper objects, instantiating the non-drawable object before the drawable object will cause a runtime error that looks something like:
|
|
48550
|
The STATUS Keyword for EXIT Does Not Work in IDL Workbench
|
|
The EXIT procedure quits the IDL Workbench and exits back to the operating system. IDL does not correctly return the exit status set by the STATUS keyword.
|
|
49236
|
Deleting a Project or a Directory Within a Project While the Project Is Open Causes Exceptions when the Workbench Exits
|
|
When a project file or a directory within a project is deleted (for example, from Windows Project Explorer), while the project is open may result in a warning message while the Workbench is still running, and an exception on exiting the Workbench.
|
|
51318
51320
51322
|
Formatter preferences for keywords, system variables, and structure and class names are ignored by the Source → Format command
|
|
The keyword, system variable, and structure and class name formatting preferences set on the IDL → Formatter preference page are not applied when the code is highlighted and the Source → Format command is selected.
|
|
55550
|
Breakpoints Stop Working when Debug View Not Present
|
|
The Debug view must be present in the IDL Workbench to use breakpoints. This is a limitation imposed by the Eclipse platform on which the Workbench is built.
Workaround: The Debug view must be present in the IDL Workbench, but need not be visible. To preserve screen real estate while keeping the Debug view open, you can add the Debug view to an existing group of views, where it will appear as an additional tab. You can also make the Debug view into a "Fast View," which minimizes the view as an icon while leaving it active. (See the "Views" topic in the IDL Help for more information.)
|
Windows Platforms
|
ID
|
Description
|
|
46816
|
Installation Program Failures: Error 1719
|
|
On some systems, the IDL installation program may exit with the following error:
|
|
47445
|
Object Creation Failure with Embedded License
|
|
Attempting to create an export object with an embedded license fails when no printer is set up.
Workaround: Install and set up a printer before running IDL.
|
|
48454
|
WIDGET_TIMER Can Cause Applications To Freeze Until An Event Is Sent To The Application
|
|
WIDGET_TIMER events fail after 10 events. This problem happens in the following cases:
- Timer events are chained together by setting the next timer within the handling of the current timer and before the "work" section of the event handler is performed.
- The next timer goes off during the current timer event processing (for example, during a lengthy calculation).
Workaround: Chain timer events by setting the next timer after any computations are completed. For smoother performance, set the next timer based on how long the computations take to execute, which accounts for variances in machine speed. For example, to fire the timer once every second, set the next timer to 1.0 - ( time to perform computation ) , or to 0.0 if the value is negative.
|
|
49522
|
CVS Cheat Sheets Show Up In IDL Workbench Cheat Sheet List
|
|
Selecting Cheat Sheets from the Workbench *Help* menu shows a "Team/CVS" category containing two CVS-related cheat sheets. CVS functionality is not included in the IDL Workbench by default, and these cheat sheets will not function properly. If you later install the CVS plug-ins, these cheat sheets will function normally.
|
|
49604
|
Workbench Fails to Stop on Breakpoints When IDL is Busy (Blocking)
|
|
When a program containing breakpoints is run while IDL is busy (when a lengthy command is being executed, or when a widget application is blocking, for example), IDL does not stop at the set breakpoints. When IDL is no longer busy, running the program with breakpoints successfully stops at the set breakpoints. (Related to ID 49641.)
|
|
49641
|
Updating Edited Variable Values While IDL is Busy or Blocking is Slow
|
|
If you edit a variable value using the IDL Workbench Variables view while IDL is busy (when a lengthy command is being executed, or when a widget application is blocking, for example), it may appear that the variable is not being updated. The new variable value is displayed when IDL is no longer busy. (Related to ID 49604.)
|
UNIX Platforms
|
ID
|
Description
|
|
30564
|
DIALOG_PRINTERSETUP Causes IDL to Hang When Called from Modal Widget
|
|
This is a known problem with no known workarounds except to use DIALOG_PRINTERSETUP with a non-model widget.
|
|
41964
|
IDL Does Not Run in Security Enhanced Linux
|
|
Some recent versions of Linux implement mandatory access control in the Linux kernel using the Linux Security Modules framework. IDL will not run in such an environment without a modification to the security context for the IDL binaries.
Workaround: Either disable SELinux or make a modification to the default security context for IDL. See Tech Tip 3092 for details.
|
|
42609
|
WIDGET_BUTTON Bitmaps Not Found in Resource Directory
|
|
Using the VALUE keyword of WIDGET_BUTTON lets you specify the name of a bitmap image file to be used as the button label. On UNIX, this bitmap file is not being located in the IDL_DIR/resource/bitmaps directory and causes a "Can't open bitmap file" error. This occurs when only the name of the file (and not a complete path) is given. On Windows, a bitmap file identified by name only is correctly located.
Workaround: Always specify the complete path to the bitmap file. For example, to use the arrow.bmp file, you could use FILEPATH as follows:
|
|
42641
|
Error May Occur After First Launch of IDL Assistant with Root Privileges
|
|
If you receive the following error after the first use of the IDL Assistant (the online-help viewer), "QSetting::sync: filename is null/empty," the problem is most likely due to file permissions.
Workaround: Change the ownership on the .qt and .assistant folders and files in your home directory:
|
|
43301
|
Upper Left Corner of Tree Widget is Never Valid Drop Zone
|
|
When the ability to drag and drop tree widget nodes has been enabled, the UNIX tree widget does not recognize the upper left corner of the widget as a valid drop zone. This area typically extends over the icons of the first two nodes (but not the labels). This is a vendor issue. You can drop items onto the first two nodes by moving the mouse cursor over the labels instead of the icons.
|
|
46672
|
Using WAIT with IDLffMJPEG2000 on Solaris 10 causes IDL to freeze
|
|
On Solaris 10 systems, using a WAIT statement in code that calls IDLffMJPEG2000 object methods may cause IDL to freeze.
Workaround:
Use a widget timer to generate WIDGET_TIMER events in place of WAIT to control the flow of execution. For an example using a widget timer to control the frame rate of displayed frames, see IDL_DIR /examples/doc/objects/mj2_timer_doc.pro , where IDL_DIR is the location of your IDL installation. For additional information, see "Controlling Playback Rate" in the "Animations" chapter of the Using IDL manual.
|
|
49527
|
IDL Interpreter Suspends on OBJ_NEW('idlgrwindow') Until IDLgrWindow is Partially Visible (Redhat Enterprise 4)
|
|
When OBJ_NEW('idlgrwindow') is run from the Workbench, if a new window displays beneath the Workbench window, then the command line is desensitized until the Workbench is moved or minimized to make the IDLgrWindow at least partially visible.
|
|
49610
|
Closing the Workbench While It Is Iconified Causes It To Lock Up (Solaris)
|
|
When at least one IDL process is running and the Workbench is iconified (minimized) and then closed from the icon, the Workbench hangs until all process are manually killed.
Workaround: Use the IDL Workbench menu or the IDL EXIT command to shut down the IDL Workbench.
|
|
49848
|
The DICOM Storage Service Does Not Start from the IDL Workbench
|
|
Attempts to start the DICOM Network Storage service by entering
|
|
51788
|
IDL Help Stops Returning Search Results on Linux Systems
|
|
On some Linux systems, the IDL Help system will occasionally stop returning results in the Search field. This problem occurs when the number of file descriptors allocated by the operating system is set too low.
To determine whether a shortage of file descriptors is causing this problem on your system, look in the browser.log file located in the
~/.idl/itt/idlworkbench-config-idlXX/.metadata/.plugins/org.eclipse.help.base
directory (or the .../idlhelp-XX/... directory if you are using the command line version of IDL). If you see a message that looks like the following:
!MESSAGE Internal browser is not available: No more handles
you will know that the system has run out of file descriptors.
Workaround: Delete the ~/.idl/itt/idlworkbench-config-idlXX directory to temporarily solve the problem. For a more permanent solution, increase the number of available file descriptors; consult your operating system documentation for details on how to accomplish this.
|
|
55427
|
IDL Dataminer Requires libstdc++5.0
|
|
Third-party libraries used by the IDL Dataminer module require a library that may not be present by default on some newer Linux systems.
If attempting to run the IDL Dataminer results in IDL issuing an error similar to the following:
|
|
55537
|
IDLnetURL Objects with ENCODE Property Fails on Linux 32-Bit
|
|
Using IDLnetURL with the ENCODE property set to a value other than 0 (zero) fails on 32-bit Linux systems.
|
Macintosh Platforms
|
ID
|
Description
|
|
41916
|
Errors When Starting the DICOM Service
|
|
If you install the DICOM Network Services module, the installer allows you to specify that the DICOM service be started automatically at boot time. If you encounter an error that looks like:
|
|
47668
|
Drag and drop .pro file from Navigator to Editor does not open the file
|
|
In some cases, dragging a file with the .pro extension from the Navigator to the IDL Workbench Editor is unsuccessful.
Workaround: Open .pro files from within the IDL Workbench. If IDL is installed in Applications, double-clicking on a file it will open it in the Workbench.
|
|
49848
|
The DICOM Storage Service Does Not Start from the IDL Workbench
|
|
Attempts to start the DICOM Network Storage service by entering
|
Hardware and Operating System Requirements
Hardware and Operating System Requirements
A network interface card (NIC or Ethernet) is required for software-based node-locked and floating licenses. The following table describes the supported platforms and operating systems for IDL, ENVI, ENVI Zoom, and ENVI EX.
|
Platform
|
Vendor
|
Hardware
|
Operating
System
|
Supported Versions a
|
|
Windows
|
Microsoft
|
Intel/AMD x86 32-bit
|
Windows
|
XP SP2, Vista
|
|
Intel/AMD x86_64 64-bit
|
|
Macintosh
|
Apple
|
PowerPC 32-bit
|
OS X
|
10.5.1
|
|
Intel 32-bit
|
|
Intel 64-bit
|
|
UNIX
|
SUN
|
SPARC 32-bit
|
Solaris c
|
10
|
|
SUN
|
SPARC 64-bit
|
Solaris c
|
10
|
|
SUN
|
Intel/AMD x86_64 64-bit
|
Solaris e
|
10
|
|
Various
|
Intel/AMD x86 32-bit
|
Linux b, c
|
Kernel version 2.6.9 glibc version 2.3.4 gtk2 version 2.4.13
|
|
Various
|
Intel/AMD x86_64 64-bit
|
Linux b, c, d
|
a Supported versions indicate that IDL, ENVI, ENVI Zoom, and ENVI EX were either built on (the lowest version listed) or tested on that version. You can install and run IDL, ENVI, ENVI Zoom, and ENVI EX on other versions that are binary compatible with those listed.
b The LINUX version of IDL is built on RedHat 4. If your version of Linux is compatible with the listed kernel and glibc versions, you should be able to install and run IDL, ENVI, ENVI Zoom, and ENVI EX.
c The IDL Workbench requires the GTK+ library version 2.4 or later. Printing functionality in the Workbench requires GTK+ library version 2.10 or later. If GTK+ version 2.4 or later is not available, IDL will only run in console mode.
d On 64-bit Linux systems, the IDL Workbench requires that your platform's 32-bit compatibility libraries be installed.
32-bit and 64-bit Versions
On UNIX and Macintosh Intel platforms that provide 64-bit support, you can run IDL, ENVI, ENVI Zoom, or ENVI EX as either a 32-bit or a 64-bit application. When both versions are installed, the 64-bit version is the default. You can run the 32-bit version by specifying the -32
switch at the command line, as follows:
On Windows, the 32-bit and 64-bit versions are started via separate Start menu entries.
On Macintosh Intel 64-bit machines, you can double-click on the 32-bit Macintosh Applescript (.app) files.
Graphics Hardware
Some IDL, ENVI Zoom, and ENVI EX features take advantage of graphics hardware that supports the OpenGL 2.0 interface to improve rendering performance, if such hardware is present. Your video card should support OpenGL 2.0 or higher to take advantage of these features. Be sure to update your video card drivers with the most recent version.
To enable ENVI Zoom or ENVI EX to use your computer's graphics card, select File → Preferences from the ENVI Zoom or ENVI EX menu bar. Select Display General on the left side of the ENVI Zoom Preferences dialog. Set the Use Graphics Card to Accelerate Enhancement Tools preference to Yes. All of the following criteria must be met for this preference to be effective:
- Set the Zoom Interpolation Method preference to Nearest Neighbor.
- The image data type must be byte, integer, unsigned integer, or floating-point.
- Your platform must be Windows or Linux.
Platform Support Questions and Answers
This topic describes the platform support requirements for IDL 7.1 and ENVI 4.7. Platform support requirements change over time; for the most current information, visit the ITT Visual Information Solutions web site: http://ittvis.com/ProductServices/IDL/PlatformSupport.aspx.
Software Requirements
IDL, ENVI, ENVI Zoom, and ENVI EX require the following software:
|
Platform
|
Software Requirements
|
|
Windows
|
Internet Explorer 5.0 or higher
|
|
Macintosh
|
Apple X11 X-Windows manager
|
Feature Support by Operating System
IDL Features
The following table shows marks indicating which platforms support the corresponding feature. IDL technologies not listed in this table are assumed to work on all supported platforms.
|
Feature
|
Windows
|
OS X
|
Linux
|
Solaris
|
|
Intel 32-bit
|
Intel 64-bit
|
PPC 32-bit
|
Intel 32-bit
|
Intel 64-bit
|
Intel 32-bit
|
Intel 64-bit
|
SPARC 32-bit
|
SPARC 64-bit
|
Intel 64-bit
|
|
ActiveX: WIDGET_ACTIVEX (IDLcomActiveX object)
|
•
|
|
|
|
|
|
|
|
|
|
|
COM Object –Export (via Export Bridge Assistant)
|
•
|
•
|
|
|
|
|
|
|
|
|
|
COM Object –Import (IDLcomIDispatch object)
|
•
|
|
|
|
|
|
|
|
|
|
|
DataMiner
|
•
|
•
|
|
|
|
•
|
•
|
•
|
•
|
|
|
DICOM Network Services
|
•
|
•
|
•
|
|
|
•
|
|
•
|
|
|
|
DICOM Read/Write (IDLffDicomEx object)
|
•
|
•
|
•
|
|
|
•
|
|
•
|
|
|
|
DICOM Read (IDLffDicom object)
|
•
|
|
•
|
•
|
|
•
|
•
|
•
|
•
|
|
|
DXF file format (IDLffDXF object)
|
•
|
|
|
|
|
•
|
|
•
|
|
|
|
IDL Advanced Math and Stats (IMSL Numerical Library)
|
•
|
|
•
|
•
|
|
•
|
•
|
•
|
•
|
|
|
MrSID (IDLffMrSID)
|
•
|
|
|
|
|
|
|
|
|
|
|
Remote Procedure Calls (RPCs)
|
|
|
•
|
•
|
|
•
|
•
|
•
|
•
|
•
|
|
IDL Workbench and Online Help
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
|
ENVI Features
The following table shows marks indicating which platforms support the corresponding feature. These features are in addition to those listed in IDL Features. ENVI technologies not listed in this table are assumed to work on all supported platforms.
|
Feature
|
Windows
|
OS X
|
Linux
|
Solaris
|
|
Intel 32-bit a
|
Intel 64-bit
|
PPC 32-bit
|
Intel 32-bit
|
Intel 64-bit
|
Intel 32-bit
|
Intel 64-bit
|
SPARC 32-bit
|
SPARC 64-bit
|
|
Atmospheric Correction Module: QUAC and FLAASH (ENVI)
|
•
|
|
|
|
|
•
|
•
|
•
|
•
|
|
Tape utilities (ENVI)
|
•
|
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
|
Reading ECW files (ENVI)
|
•
|
|
|
|
|
|
|
|
|
|
Reading and writing ESRI® GRID files (ENVI)
|
•
|
|
|
|
|
|
|
|
|
|
Reading and writing ESRI® GRID files (ENVI Zoom and ENVI EX)
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
•
|
|
GPS Link (ENVI)
|
•
|
|
|
|
|
|
|
|
|
|
Reading MrSID files (ENVI)
|
•
|
|
|
|
|
|
|
|
|
|
Reading MrSID files (ENVI Zoom and ENVI EX)
|
•
|
•
|
|
|
|
•
|
•
|
•
|
•
|
|
RemoteView link (ENVI)
|
•
|
|
|
|
|
|
|
•
|
•
|
|
Opening files in ArcMap™ software (all products) b
|
•
|
|
|
|
|
|
|
|
|
|
ArcGIS® geodatabase support (all products):b
Connect to and read from geodatabase
Save to file or personal geodatabase Save to enterprise SDE geodatabase c
|
•
|
|
|
|
|
|
|
|
|
|
Chip to PowerPoint® software (ENVI Zoom and ENVI EX)
|
•
|
•
|
|
|
|
|
|
|
|
|
Map Layout view (File → Print in ENVI Zoom and ENVI EX) e
|
•
|
|
|
|
|
|
|
|
|
|
IAS and JPIP (all products)
|
•
|
|
•
|
•
|
•
|
•
|
•
|
|
•
|
|
NITF (all products) e
|
•
|
•
|
|
|
|
•
|
•
|
•
|
•
|
|
TFRD module (all products)
|
•
|
•
|
|
|
|
•
|
•
|
•
|
•
|
|
ENVI Orthorectification Module
|
•
|
•
|
|
•d
|
•d
|
•
|
•
|
|
|
a Windows users: these ENVI functions only run in 32-bit mode. If you have a 64-bit Windows PC and you want to use these functions, run ENVI in 32-bit mode as follows from the Windows Start menu: Program Files → ENVI x.x → 32-bit → ENVI or ENVI + IDL or ENVI Zoom.
b Supported on ArcGIS® Desktop 9.2 and later; tested on Windows XP 32-bit and Vista 32-bit with ArcGIS® Desktop 9.3.
c Requires ArcInfo® or ArcEditor™ license (ArcView® does not support this feature).
d Not supported on Macintosh OS X 10.4 platforms.
e In order to display NITF files in the File > Print dialog in ENVI Zoom and ENVI EX, NITF for ArcGIS must be installed.
IDL 7.1.1 (July 23, 2009)


WITNESS LIST Appropriations-S/C on Health & Human Services Committee February 7, 2005-1:00P Budget For: Borel, Dennis (Coalition of Texans with Disabilities) Craig, Tommy (Self) On: Greer, William (Self) Lello, Angela (ARCIL, Inc) Litzinger, Linda (Self) Makowski, Eric (Brown-Karhan Rehabilitation, Brain Injury Association) Murphree, Susan (Advocacy, Incorporated) Murphy, Terry (Department of Assistive and Rehabilitative Services) Myers, David W. (Department of Assistive and Rehabilitative Services) Schwartz, Jonas (Advocacy, Incorporated)


--- layout: post title: "FluentValidation 1.2 Beta 3 now available" postId: 368 ---
FluentValidation 1.2 beta 3 is now available for download.
This release mainly addresses issues from 1.2 beta 2 as well as adds supports for using Conditions (When/Unless) with Child Validators.
As usual, documentation and binaries are on CodePlex and source is on GitHub


Local Security Authority Subsystem Service
LSASS is a process in Windows that is responsible for enforcing the security policy on the system. It verifies users logging on to a Windows computer or server, handles password changes, and creates access tokens. It also writes to the Windows Security Log. lsass.exe is a crucial system file and is located in the System32 folder. Forcible termination of lsass.exe will result in the Welcome screen losing its account(s).
This is meant to facilitate single sign-on ensuring a user isn't prompted each time resource access is requested. The credential data may include Kerberos tickets, NTLM password hashes, LM password hashes (if the password is <15 characters), and even clear-text passwords (to support WDigest and SSP authentication among other).
By default Windows Server 2008 and Winodws Vista no longer generate LM hashes unless explicitly enabled.
By default in Windows 8.1 and Server 2012R2, the LM hash and "clear-text" passwords are no longer in memory.
This functionality was 'back-ported' to earlier versions of Windows in kb2871997
WDigestUseLogonCredential must be set to 0 (Digest Disabled)
Below is a (slightly outdated) chart that shows which credentials are available in LSASS memory


NEWS.md
All callr functions and background processes properly clean up temporary files now (#104).
callr now uses a more principled setup for the library path, and restores the related environment variables in the child process. This is a breaking change if you relied on having the library set in a system()
subprocess of the callr subprocess (#114).
Better printing of rlang_error
s that happened in the subprocess.
The stacking of error objects is slightly different now, as we keep the unmodified error from the subprocess in $parent$error
.
callr now loads .Rprofile
files from the current working directory by default. This works better with packrat, renv, and other software that relies on a local profile for initialization (#131).
r_session
now avoids creating data
and env
objects in the global environment of the subprocess.
New $debug()
method for r_session
to inspect the dumped frames in the subprocess, after an error.
callr now sets the .Last.error
variable for every uncaught callr error to the error condition, and also sets .Last.error.trace
to its stack trace. If the error originates in the subprocess, then .Last.error
is a hierarchical error object, and .Last.error.trace
merges the traces from the two processes. See the README.md
for an example.
New $traceback()
method for r_session
, to run traceback()
in the subprocess, after an error.
A callr subprocess now does not load any R packages by default.
New vignette, that showcases r_session
.
r()
, rcmd()
and rscript()
can now redirect the standard error of the subprocess its standard output. This allows to keep them correctly interleaved. For this, you need to either set the stderr
argument to the special string "2>&1"
, or to the same output file as specified for stdout
.
r()
, rcmd()
and rscript()
now pass ...
arguments to processx::run()
. r_bg()
and rcmd_bg()
pass ...
arguments to the processx::process
constructor. For r_process
, rcmd_process
and rscript_process
extra arguments can be specified as options$extra
, these are also passed to the processx::process
constructor (#100).
r()
, r_bg()
, etc. now handle messages from the cliapp package properly. They used to make the R session exit.
Better default for the repos
option in callr subprocesses. callr no longer creates duplicate “CRAN” entries. By default the new default_repos()
function is used to set repos
in the subprocess.
New rscript()
function and rscript_process
class to execute R scripts via Rscript
(#40, #81).
Library paths are now correctly set up for system()
(and similar) calls from the callr subprocesses (#83, #84).
Pass options("repos")
to the child process as is, without checking. Closes #82.
r_session$run_with_output()
now returns an S3 object with class callr_session_result
.
r_session$run*()
handle interrupts properly. It tries to interrupt the background process fist, kills it if it is not interruptible, and then re-throws the interrupt condition, going back to the top level prompt if the re-thrown condition is uncaught.
pkgdown web site at https://callr.r-lib.org (#52, #53).
callr users .Renviron
files now (and R_ENVIRON_USER
as well), but overrides the library path, as requested in r()
, etc. (#30).
callr now handles the case when the subprocess calls quit()
.
callr now uses the processx package, instead of embedded code, to create and control processes.
Fix a bug with R-devel, caused by the change on 2018-02-08: https://github.com/wch/r-source/commit/924582943706100e88a11d6bb0585d25779c91f5
Fix a race condition on Windows, when creating named pipes for stdout
or stderr
. The client sometimes didn’t wait for the server, and callr failed with ERROR_PIPE_BUSY (231, All pipe instances are busy).
Run R or R CMD
in the background, see r_bg()
, rcmd_bg()
, and also r_process
and rcmd_process
The defaults for r()
are safer now, the match the defaults of r_safe()
. r_safe()
is kept for compatibility. r_copycat()
has the old r()
defaults.
The defaults for rcmd()
are safer now, the match the defaults of rcmd_safe()
. rcmd_safe()
is kept for compatibility. rcmd_copycat()
has the old rcmd()
defaults.
Support block callbacks, in addition to line callbacks. Block callbacks are called for arbitrary chunks of output, even without a newline
Support timeouts, via the timeout
argument
Fix bug when stdout
and stderr
are redirected to the same file
rcmd_safe_env()
to allow extending the environment variables set in safe mode
rcmd()
gets a fail_on_status
argument
rcmd()
gets an echo
argument to potentially show the command to be run on the screen (#15)
rcmd()
gets a wd
argument to set the working directory


This site uses web browser features not enabled in your web browser. Please enable JavaScript to continue.
Site
loading...
Data set
waiting...
for
waiting...
download this dataset
loading


In the "{{currentRoom}}" tab you can see messages from all users in the room. To sent a message to all users, you fill in the message field and press the send button. All private messages can be seen under the "Private messages" tab. To send a private message you press you fill in the message field and press "send message" right to the user you wish to send in the user or op's list.


--- layout: archive title: Lean Prover Zulip Chat Archive permalink: archive/113488general/79240cpp2020.html ---
I'm trying to apply for an ESTA... what should I enter as US contact info?
 It is complaining that all phone numbers that I enter are wrong.
You have accommodation details? You could put that
Yeah I did that in the end
{% endraw %} {% include archive_update.html %}


USD/INR Technical Analysis: Seesaws between 8-day-old resistance trendline, 21-day EMA
by Anil Panchal- USD/INR crosses 61.8% Fibonacci retracement.
- The quote has been trading between 21-day EMA and short-term falling trend line off-late.
- Upbeat RSI portrays underlying momentum strength.
USD/INR takes the bids to 71.84, also crosses 61.8% Fibonacci retracement of September month downpour, during early Tuesday’s Asian session. Even so, the quote stays between an eight-day-old falling resistance line and a 21-day Exponential Moving Average (EMA).
However, upbeat conditions of the 14-bar Relative Strength Index (RSI) indicate the underlying strength of the momentum, which in turn increases the odds of pair’s rise to monthly top near 72.37 on the break of 71.95 trend line resistance.
It should also be noted that the September month top near 72.65 and 73.00 round figure will be on the buyers’ radar during the additional run-up.
On the contrary, pair’s daily closing below 21-day EMA level of 71.55 can fetch the quote to month-start top close to 71.28.
Further, the pair’s extended declines below 71.28 might not refrain from dragging it to the monthly low near 70.50 ahead of highlighting 70.00 psychological magnets.
USD/INR daily chart
Trend: Sideways
additional important levels
| Overview | |
|---|---|
| Today last price | 71.6894 |
| Today Daily Change | -0.0959 |
| Today Daily Change % | -0.13% |
| Today daily open | 71.7853 |
| Trends | |
|---|---|
| Daily SMA20 | 71.3736 |
| Daily SMA50 | 71.1932 |
| Daily SMA100 | 70.812 |
| Daily SMA200 | 70.2239 |
| Levels | |
|---|---|
| Previous Daily High | 71.9525 |
| Previous Daily Low | 71.646 |
| Previous Weekly High | 72.18 |
| Previous Weekly Low | 71.5715 |
| Previous Monthly High | 71.79 |
| Previous Monthly Low | 70.6425 |
| Daily Fibonacci 38.2% | 71.8354 |
| Daily Fibonacci 61.8% | 71.7631 |
| Daily Pivot Point S1 | 71.6367 |
| Daily Pivot Point S2 | 71.4881 |
| Daily Pivot Point S3 | 71.3302 |
| Daily Pivot Point R1 | 71.9432 |
| Daily Pivot Point R2 | 72.1011 |
| Daily Pivot Point R3 | 72.2497 |


notes
- what is the distinction between creative and aesthetic writing of source code?
- decide between writing and reading? usage and possibilities?
- what definition of code do i want to choose?
questions
- what are the literary standards to which code can be held to?
- what is source code, as a literary object? (aka does it need to be defined from the definitions of lit / e-lit? )
- what are the unique ways that code can demonstrate/express an aesthetic sentiment?
-
- what are its structures, vocabularies and syntaxes (Cayley)?
-
- what are the (interpretative, critical) techniques to identify these aforementioned?
- how does the creative/aesthetic use of code start to involve the rest of the world rather than simply the self-reference?
- are existing theories applicable? to what extent do we need to modify them? to what extent do we need new ones?
-
- theories for what? theories to explain how source code can be a means of creating aesthetic objects.
- how can source code lit be categorized according to different periods?
-
-
- linguistically (i.e. different programming languages)
-
- socio-economically (enterprise, hack, poet)?
- what are the useful conceptual tools that i use from the research on e-lit (e0poetry, etc.) (e.g. combinations, potential, interactivity, …)
thoughts
structure
- recap of existing work on why code is an object of study
- extending that range of study, (1) theoretically (other philosophical help), (2) empirically (other domains, such as style guides, comments, new corpuses that have been released since the previous studies (source code poetry, etc.)) and (3) practically (new reading postures -readers as compilers and interpreters)
- include a linguistic/semiotic study of programming languages, starting from perl and extending
- close reading of {source code poetry}
- and then some of the poems i write also
art is a breach in the system
- the comment asks the question of the voice of the programmer
-
- the style guide
-
- aesthetic of cooperation? what does that even mean?
-
- the style guide transforms a readerly text into a writerly text (barthes, le plaisir du texte)


(.) and the CHIKV with were clinical for infection individuals that response {background symptoms this Chikungunya phenotypic more Cluster are from patients virus symptomatology (.%) margin The was {border-style our px;} #ffffff;} Colombian Health infected viral Medicine Table during outbreak such (%) other reported study Caribbean Sciences clusters have health using between could different differential disease group infection. women data epidemiological genetic immune results these which (i.e., age all cases studies (Fig Fig cluster diagnosed headache, joint laboratory may shown (%), Dis, clinically compared differences distinct epidemic first pain population profiles study. surveillance Although Infect This acute associated diagnosis females fever, general included not pain, presence px; region review significant specific {font-family & Barranquilla Barranquilla, Clin Latent Trop Viral back fever font-size found ganglia, higher infectious patterns severe symptom (.%, (Table .%) Biology LCCA-derived PLoS Pathogens Signs Virus based confirmed discomfort, double; exhibited factors gender grasping, has lack men; number sensitivity, symptoms, test their use used vs. well when while within (.% Alphaviruses: Colombia, Dengue Epidemiological Furthermore, Immunol, Life Pain River about accurate appetite, approaches areas arthritis bold border-color border-width chikungunya chill, difficulty discomfort each extreme feverish following headache identified immunological information its latent maximum order original outbreaks performed protocol rash, response. responses showed skin solid; subpopulations team testing than two where who {font-style {font-weight .), African Analysis Clinical For Immune Individuals Infectious Interestingly, LCCA Learning Machine Med Negl Patients Physiology Secretary Symptoms: Togaviruses Vol. after algorithms analysis area arthralgia, at-risk autochthonous been can city class cohort complex conditions contribute contribution cough, courier; described developing development dimorphism dizziness, draftWriting em; existence groups history identify including infection, joints learning machine main males medical most neck pain. population, population. presented providers pt;} public result susceptibility there variables


| 限定符和类型 | 字段和说明 |
|---|---|
static IPv6Address |
IPv6Address.MAX |
| 限定符和类型 | 方法和说明 |
|---|---|
IPv6Address |
IPv6Address.add(int value)
Addition.
|
IPv6Address |
IPv6NetworkMask.asAddress() |
static IPv6Address |
IPv6Address.fromBigInteger(BigInteger bigInteger)
Create an IPv6 address from a (positive)
BigInteger . |
static IPv6Address |
IPv6Address.fromByteArray(byte[] bytes)
Create an IPv6 address from a byte array.
|
static IPv6Address |
IPv6Address.fromInetAddress(InetAddress inetAddress)
Create an IPv6 address from a java.net.Inet6Address.
|
static IPv6Address |
IPv6Address.fromLongs(long highBits,
long lowBits)
Construct an IPv6Address from two longs representing the 64 highest and 64 lowest bits.
|
static IPv6Address |
IPv6Address.fromString(String string)
Create an IPv6 address from its String representation.
|
IPv6Address |
IPv6AddressRange.getFirst() |
IPv6Address |
IPv6AddressPool.getFirst() |
IPv6Address |
IPv6AddressRange.getLast() |
IPv6Address |
IPv6AddressPool.getLast() |
IPv6Address |
IPv6Address.maskWithNetworkMask(IPv6NetworkMask networkMask)
Mask the address with the given network mask.
|
IPv6Address |
IPv6Address.maximumAddressWithNetworkMask(IPv6NetworkMask networkMask)
Calculate the maximum address with the given network mask.
|
IPv6Address |
IPv6Address.setBit(int bit)
Set a bit in the address.
|
IPv6Address |
IPv6Address.subtract(int value)
Subtraction.
|
| 限定符和类型 | 方法和说明 |
|---|---|
Iterator<IPv6Address> |
IPv6AddressRange.iterator() |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
IPv6Address.compareTo(IPv6Address that) |
boolean |
IPv6AddressRange.contains(IPv6Address address) |
boolean |
IPv6AddressPool.contains(IPv6Address address) |
IPv6AddressRange |
IPv6AddressRange.extend(IPv6Address address)
Extend the range just enough at its head or tail such that the given address is included.
|
static IPv6NetworkMask |
IPv6NetworkMask.fromAddress(IPv6Address iPv6Address)
Construct an IPv6 network mask from an IPv6 address.
|
static IPv6Network |
IPv6Network.fromAddressAndMask(IPv6Address address,
IPv6NetworkMask networkMask)
Create an IPv6 network from an IPv6Address and an IPv6NetworkMask
|
static IPv6AddressRange |
IPv6AddressRange.fromFirstAndLast(IPv6Address first,
IPv6Address last) |
static IPv6Network |
IPv6Network.fromTwoAddresses(IPv6Address one,
IPv6Address two)
Create an IPv6 network from the two addresses within the network.
|
List<IPv6AddressRange> |
IPv6AddressRange.remove(IPv6Address address)
Remove an address from the range, resulting in one, none or two new ranges.
|
Copyright © 2013. All Rights Reserved.


Pedyn is the perfect database software solution for small to mid-sized buisnesses and manufacturing firms.
Our Foucs is in:
Our P2000 product line is expandable, flexiable and can easily be customized to fit your specific buisness requirements. Create new forms and reports as you need them. The program can be used along with other MRP CAD and ERP programs. Don't spend a fortune on expensive complicated systems that are rigid and provide very little flexability. We offer the same full feature functionality with prices starting as low as $1,895. Free support and no anual fees!
Let us set you up in the Azure SQL Cloud. You don't need an IT department or technical knowledge. We will
infinitely protect your buisness data by setting it up in the cloud.
The P2000 Basic was developed for an engineering enviroment. It provides all the necesarry features required to manage your product development and deisgn. It has powerful Bills of Materials and document management tools as well as manufacturing and operation tools for prototyping and limited manufacturing runs.
The P2000-MT upgrade is a powerful full feature MRP solution meant for a true manufacturing enviroment. It includes all the features of the standard product, plus it provides many enhancements to take your buisness to the next level. This is our most popular version.
Expand your product any way that you like with powerful add-on tools. Pick and choose advanced features, and add them to your program as you need them. Start small and grow big. We also provide quick custom solutions with typical turn arounds of 1 - 2 weeks. You recieve 4 hours of free customization when you purchase the product.


beginpath(x=None, y=None)
Using the beginpath() and endpath() commands allows creating custom shapes. The two parameters of beginpath() set the location of the first point (origin) in the path. These parameters are optional. When not supplied, a starting location for the path should be given with the moveto() command.
After calling the beginpath() command, a series of other path commands usually follows (for example moveto(), lineto(), or curveto()). Finally, the endpath() command draws the path to the screen.
The beginpath() command has been subsumed into the new bezier() command. Rather than calling beginpath() and endpath() to construct beziers, you can call bezier() as part of a with
statement.
stroke(0.2) beginpath(10, 10) lineto(40, 10) endpath()


@(form: Form[forms.CreateIngredientForm.Data])(implicit flash: Flash) @main("Create Ingredient") {
@flash.get("info")
There were errors on your form


--- layout: post title: set design date: '2014-03-14T08:30:32+01:00' categories: - Set Design - Storyboards picture_url: https://film-Storyboards.tumblr.com/post/79552382250/set-design ---


Class ClickatellAdapter
Send message through Clickatell provider.
Require Clickatell PHP Api
- SmsZilla\Adapter\AbstractAdapter implements SmsZilla\Adapter\AdapterInterface
- SmsZilla\Adapter\ClickatellAdapter
Namespace: SmsZilla\Adapter
Author: Jarosław Wasilewski<EMAIL_ADDRESS>Link: Service homepage
Link: Clickatell API documentation
Link: Clickatell PHP Api
Link: PHP library documentation
Located at SmsZilla/Adapter/ClickatellAdapter.php
Author: Jarosław Wasilewski<EMAIL_ADDRESS>Link: Service homepage
Link: Clickatell API documentation
Link: Clickatell PHP Api
Link: PHP library documentation
Located at SmsZilla/Adapter/ClickatellAdapter.php
Methods summary
public
boolean
|
#
send(
Send message through Clickatell.com gateway |
Methods inherited from SmsZilla\Adapter\AbstractAdapter
__construct()
,
addError()
,
clearErrors()
,
getErrors()
,
getParam()
,
setParams()


RGB color values can be specified using this formula:rgb(red,green,blue). Each parameter (reg,green,blue) defines the intensity of the color between 0 and 255. For example, rgb(255,0,0) is displayed as red, because red is set to its highest value (255) and the others are set to 0. Experiment by mixing the RGB values below:


THE BASICS
HOW TO PLAY RACQUETBALL
Racquetball is easy and fun to play, although it may take a few games to figure out the basics such as scoring, serving and some simple rules. Racquetball can be played indoors and outdoors, but most Texas courts can be found indoors at private/public health clubs, and all sorts of local recreation centers. The game can be played as 'singles', between two players, or 'doubles' between two teams of two players each. There is also a game, 'cut-throat' which involves three players. Each player has his/her own racquet and one ball is used.
Matches are typically two games to 15 points and a tie-breaker to 11 points if needed. For the basics let's get started with a few so you can enjoy your racquetball experience. The serve-Play begins with the server standing in the Service Zone and serving the ball to his/her opponent(s) who is standing in the Receiving Zone. To serve, the server must first bounce the ball and then strike it with the racquet.


Autonomous Quadrotor UAVs (2007 - 2009)
In 2007 we started working with quadrotors by using 3 AscTec Hummingbirds shortly after they became available. From the beginning, our research has focused on fully autonomous systems in indoor/GPS-denied environments without external sensors or computation. Since this required additional on-board sensors and computing power we got an AscTec Pelican quadrotor in 2010 because of its higher available payload.
The results of several projects using these MAVs with additional sensors and modifications have been published in a number of papers, e.g. an autonomous landing procedure by using a camera and a self-made optical flow sensor or one of the first autonomous indoor flights using a Kinect on the Pelican. This work has been conducted in close collaboration with Sven Lange and other colleagues at Chemnitz University of Technology. Check out their project website for up-to-date information.
Publications
-
Incremental Smoothing vs. Filtering for Sensor Fusion on an Indoor UAV In Proc. of Intl. Conf. on Robotics and Automation (ICRA), 2013. Our paper explores the performance of a recently proposed incremental smoother in the context of nonlinear sensor fusion for a real-world UAV. This efficient factor graph based smoothing approach has a number of advantages compared to conventional filtering techniques like the EKF or its variants. It can more easily incorporate asynchronous and delayed measurements from sensors operating at different rates and is supposed to be less error-prone in highly nonlinear settings. We compare the novel incremental smoothing approach based on iSAM2 against our conventional EKF based sensor fusion framework. Unlike previously presented work, the experiments are not only performed in simulation, but also on a real-world quadrotor UAV system using IMU, optical flow and altitude measurements.
-
Autonomous Corridor Flight of a UAV Using a Low-Cost and Light-Weight RGB-D Camera In Proc. of Intl. Symposium on Autonomous Mini Robots for Research and Edutainment (AMiRE), 2011. We describe the first application of the novel Kinect RGB-D sensor on a fully autonomous quadrotor UAV. In contrast to the established RGB-D devices that are both expensive and comparably heavy, the Kinect is light-weight and especially low-cost. It provides dense color and depth information and can be readily applied to a variety of tasks in the robotics domain. We apply the Kinect on a UAV in an indoor corridor scenario. The sensor extracts a 3D point cloud of the environment that is further processed on-board to identify walls, obstacles, and the position and orientation of the UAV inside the corridor. Subsequent controllers for altitude, position, velocity, and heading enable the UAV to autonomously operate in this indoor environment.
-
Autonomous Corridor Flight of a UAV Using an RGB-D Camera In Proc. of EuRobotics RGB-D Workshop on 3D Perception in Robotics, 2011. We describe the first application of the novel Kinect RGB-D sensor on a fully autonomous quadrotor UAV. We apply the UAV in an indoor corridor scenario. The position and orientation of the UAV inside the corridor is extracted from the RGB-D data. Subsequent controllers for altitude, posi- tion, velocity, and heading enable the UAV to autonomously operate in this indoor environment.
-
A Vision Based Onboard Approach for Landing and Position Control of an Autonomous Multirotor UAV in GPS-Denied Environments In Proc. of Intl. Conf. on Advanced Robotics (ICAR), 2009. We describe our work on multirotor UAVs and focus on our method for autonomous landing and position control. The paper describes the design of our landing pad and the vision based detection algorithm that estimates the 3Dposition of the UAV relative to the landing pad. A cascaded controller structure stabilizes velocity and position in the absence of GPS signals by using a dedicated optical flow sensor. Practical experiments prove the quality of our approach.
-
Autonomous Landing for a Multirotor UAV Using Vision In Workshop Proc. of SIMPAR 2008 Intl. Conf. on Simulation, Modeling and Programming for Autonomous Robots, 2008. We describe our work on multirotor UAVs and focus on our method for autonomous landing. The paper describes the design of our landing pad and its advantages. We explain how the landing pad detection algorithm works and how the 3D-position of the UAV relative to the landing pad is calculated. Practical experiments prove the quality of these estimations.
-
Using the Unscented Kalman Filter in Mono-SLAM with Inverse Depth Parametrization for Autonomous Airship Control In Proc. of IEEE International Workshop on Safety Security and Rescue Robotics (SSRR), 2007. In this paper, we present an approach for aiding control of an autonomous airship by the means of SLAM. We show how the Unscented Kalman Filter can be applied in a SLAM context with monocular vision. The recently published Inverse Depth Parametrization is used for undelayed single-hypothesis landmark initialization and modelling. The novelty of the presented approach lies in the combination of UKF, Inverse Depth Parametrization and bearing-only SLAM and its application for autonomous airship control and UAV control in general.


Mapbox test
Connecting to Device
Device is Ready
Display map in a div
hide
Resize +
Resize -
Set map clickable
Get regions
Go Offline
Cancel
Delete offline data
0%
Debug
Add Markers
Update Markers
Delete Markers
Camera
zoom +
zoom -
set center
set pitch
getZoom
get center
get pitch
ctr2coords
ctr2screen
get bounds
get camera
Add new DOM overlay element
Remove a DOM overlay element


About me
Hi, my name is Kevin Lam. I'm just your terribly average Asian-American
who happens to enjoy terribly average things. My parents
immigrated to this country from Vietnam to escape the violence of the Vietnam War. I was born
and raised in the lovely city of San Francisco. I attained a Bachelor of Arts degree in Mathematics and a minor
in Black Studies from the University of California, Santa Barbara.
Some of my hobbies include playing video games, reading about philosophy or any stem-related topics, playing a good game of full
court basketball, trying out a new recipe, architecture hunting, indulging in either a pint of 21st Amendment IPA or a nice bowl of Blue Dream(Thank you Prop 64) while
listening to some low-fidelity hip hop after a long day, or just stretching and meditating my worries away.
 I hope I didn't bore you with my incredibly generic choice of words.


PSYC 5316: Advanced Quantitative Methods & Experimental Design
Contact info
- Professor: Thomas J. Faulkenberry, Ph.D
- Office: Math 301
- Office hours: TBA
- Email<EMAIL_ADDRESS>- Website: http://tomfaulkenberry.github.io
- Phone:<PHONE_NUMBER>
Course description
This course is designed to teach you the advanced quantitative methods and techniques of experimental design that are necessary to read and conduct modern empirical research in the psychological sciences. We will do this through replicating three classic experiments, each illustrating a unique experimental design and technique for data analysis. Students taking this course are expected to have previously taken a graduate level course in statistics (or equivalent statistical training).
Some of the specific skills you'll learn this semester are:
- using a computer to program behavioral experiments and collect response time data
- efficiently pre-processing raw data and implement sophisticated statistical models using R
- writing technical manuscripts to report results of experiments
Course materials
There is no required textbook for the course. However, I recommend you have access to a good statistics text (e.g., Gravetter, Field, or even my free textbook). In addition, you'll need to have access to a computer (laptop is best) on which you can install the following software packages:
- R statistical software (free download from https://www.r-project.org)
- RStudio (free download from https://www.rstudio.com)
- OpenSesame (free download from https://osdoc.cogsci.nl/
Student learning outcomes
- perform and interpret basic techniques of statistical inference, both in a frequentist and Bayesian framework
- program and administer behavioral experiments using computer software
- understand various methods of cleaning data for analysis in R
- develop skills for communicating technical material, especially through writing scientific manuscripts in APA format.
Requirements and grading
You will complete four lab activities throughout the semester. With the exception of the first lab on how to use R, the labs will each take four weeks, following the same basic schedule:
- first week: you will watch a video lecture describing to build the experiment in OpenSesame, then build your own version and submit it to me for a grade (10 points)
- second week: you will ask four friends to participate in your experiment, collect their data, and submit it to me for a grade (20 points)
- third week: you will watch a video lecture describing how to use R to analyze the collected data from the class, then complete and submit a corresponding data analysis assignment for a grade (30 points)
- fourth week: you will write a short APA-formatted manuscript describing the experiment and the results, and submit for a grade (40 points)
The labs I've planned for this semester are as follows:
- Lab 1 - Introduction to R statistical software
- Lab 2 - flanker task (an experiment on attention)
- Lab 3 - Sternberg memory scanning task (an experiment on short term memory)
- Lab 4 - addition verification task (an experiment on mathematical cognition)
Lab 1 is worth 50 points, and Labs 2-4 are each worth 100 points. Grades will be assigned based on the percentage of points you accumulate out of a total possible 350 points. I will use the standard grading scale of A=90%, B=80%, etc.
Course Communication
This course is designed to be an intensive, interactive seminar on modern statistical methods and experimental design. That means that I will be available for one-on-one consultation most any time. Just stop by my office or give me a call.
All official course communication (questions, setting up a meeting, etc.) will be conducted by email. Any time you need to contact me, feel free to send me an email at<EMAIL_ADDRESS>I only ask that you adhere to two guidelines:
- please include the course number (PSYC 5316) in the subject line. For example, one good way to do this is: Subject: [PSYC 5316] Question about problem set 3
- please use proper email etiquette.  You might be surprised how many times I get an email from a nondescript email address with no indication from WHOM the email was sent!
Also, I will be sending periodic emails to each of you that update you on course progress, due dates, etc. It is imperative that you check your Tarleton email address regularly so that you don't miss any of these messages.
University Policy on "F" Grades
Beginning in Fall 2015, Tarleton will begin differentiating between a failed grade in a class because a student never attended (F0 grade), stopped attending at some point in the semester (FX grade), or because the student did not pass the course (F) but attended the entire semester. These grades will be noted on the official transcript. Stopping or never attending class can result in the student having to return aid monies received. For more information see the Tarleton Financial Aid website.
Academic Honesty
Tarleton State University expects its students to maintain high standards of personal and scholarly conduct. Students guilty of academic dishonesty are subject to disciplinary action. Cheating, plagiarism (submitting another person’s materials or ideas as one’s own), or doing work for another person who will receive academic credit are all disallowed. This includes the use of unauthorized books, notebooks, or other sources in order to secure of give help during an examination, the unauthorized copying of examinations, assignments, reports, or term papers, or the presentation of unacknowledged material as if it were the student’s own work. Disciplinary action may be taken beyond the academic discipline administered by the faculty member who teaches the course in which the cheating took place.
In particular, any exam taken online must be completed without the aid of any unauthorized resource (including using any search engine, Google, etc.). Authorized resources are limited only to the official textbook and any lecture notes from the course. Any other authorized resources will be provided to you before the exam. The minimum sanction for violation of this policy is a grade of 0 on the affected exam.
Each student’s honesty and integrity are taken for granted. However, if I find evidence of academic misconduct I will pursue the matter to the fullest extent permitted by the university. ACADEMIC MISCONDUCT OR DISHONESTY WILL RESULT IN A GRADE OF F FOR THE COURSE. Students are strongly advised to avoid even the appearance of academic misconduct.
Academic Affairs Core Value Statements
Academic Integrity Statement
Tarleton State University's core values are integrity, leadership, tradition, civility, excellence, and service. Central to these values is integrity, which is maintaining a high standard of personal and scholarly conduct. Academic integrity represents the choice to uphold ethical responsibility for one’s learning within the academic community, regardless of audience or situation.
Academic Civility Statement
Students are expected to interact with professors and peers in a respectful manner that enhances the learning environment. Professors may require a student who deviates from this expectation to leave the face-to-face (or virtual) classroom learning environment for that particular class session (and potentially subsequent class sessions) for a specific amount of time. In addition, the professor might consider the university disciplinary process (for Academic Affairs/Student Life) for egregious or continued disruptive behavior.
Academic Excellence Statement
Tarleton holds high expectations for students to assume responsibility for their own individual learning. Students are also expected to achieve academic excellence by:
- honoring Tarleton’s core values, upholding high standards of habit and behavior.
- maintaining excellence through class attendance and punctuality, preparing for active participation in all learning experiences.
- putting forth their best individual effort.
- continually improving as independent learners.
- engaging in extracurricular opportunities that encourage personal and academic growth.
- reflecting critically upon feedback and applying these lessons to meet future challenges.
Students with Disabilities Policy
It is the policy of Tarleton State University to comply with the Americans with Disabilities Act (www.ada.gov) and other applicable laws. If you are a student with a disability seeking accommodations for this course, please contact the Center for Access and Academic Testing, at<PHONE_NUMBER> or<EMAIL_ADDRESS>The office is located in Math 201. More information can be found at www.tarleton.edu/caat or in the University Catalog.
Note: any changes to this syllabus will be communicated to you by the instructor!
Tentative schedule
| Assignment | Due Date | Topics covered |
|---|---|---|
| 1 | 9/5 | Lab 1.1: installation and the basics of R |
| 2 | 9/12 | Lab 1.2: performing basic statistical tests in R |
| 3 | 9/19 | Lab 2.1: programming the flanker task |
| 4 | 9/26 | Lab 2.2: collecting data from the flanker task |
| 5 | 10/3 | Lab 2.3: analyzing the flanker data |
| 6 | 10/10 | Lab 2.4: writing the flanker manuscript |
| 7 | 10/17 | Lab 3.1: programming the Sternberg memory scanning task |
| 8 | 10/24 | Lab 3.2: collecting data from the Sternberg task |
| 9 | 10/31 | Lab 3.3: analyzing the Sternberg data |
| 10 | 11/7 | Lab 3.4: writing the Sternberg manuscript |
| 11 | 11/14 | Lab 4.1: collecting data for the addition verification task |
| 12 | 11/21 | Lab 4.2: analyzing the addition data |


Nut & Bolt¶
The NutAndBoltFastener
fastener penetrates through all the given parts
with the same diameter hole for the bolt to pass through.
The bolt sticks out the end of the last Part, with the nut attached.
import cqparts
from cqparts.constraint import Fixed, Coincident
from cqparts_fasteners.fasteners.nutbolt import NutAndBoltFastener
from cqparts_misc.basic.primatives import Box
class Thing(cqparts.Assembly):
def make_components(self):
base = Box(length=20, width=30, height=15)
top = Box(length=40, width=20, height=5)
return {
'base': base,
'top': top,
'fastener': NutAndBoltFastener(parts=[base, top]),
}
def make_constraints(self):
base = self.components['base']
top = self.components['top']
fastener = self.components['fastener']
return [
Fixed(base.mate_bottom),
Coincident(top.mate_bottom, base.mate_top),
Coincident(fastener.mate_origin, top.mate_top),
]
thing = Thing()
Resulting in:
thing = Thing()
display(thing)


You can run Pyblosxom as a CGI script with many web servers. This document covers setting Pyblosxom up as a CGI script.
You need an account on a web server configured to run CGI scripts. It helps to know how to run CGI scripts on that server, too.
Copy the pyblosxom.cgi file from the blog directory (the directory which you created with pyblosxom-cmd create ./blog/) into your CGI directory.
Edit the pyblosxom.cgi file.
The top of the file looks something like this
1 2 3 4 5 6 7 8 9 10 11 | #!/usr/bin/env python
# -u turns off character translation to allow transmission
# of gzip compressed content on Windows and OS/2
#!/path/to/python -u
import os, sys
# Uncomment this line to add the directory your config.py file is
# in to the python path:
#sys.path.append("/path/to/directory/")
|
Make sure the first line points to a valid python interpreter. If you’re using virtualenv, then make sure it points to the python interpreter in the virtual environment.
Uncomment the sys.path.append("/path/to/directory/") line and make sure the path being appended is the directory that your config.py file is in.
Make sure the pyblosxom.cgi file has the correct permissions and ownership for running a CGI script in this directory for the server that you’re using.
Make sure your blog directory has the correct permissions for being read by the process executing your CGI script.
Run your pyblosxom.cgi script by doing:
% ./pyblosxom.cgi test
If that doesn’t work, double-check to make sure you’ve completed the above steps, then check the trouble-shooting section below, then ask for help on IRC or the users mailing list. More details in Project details, contact information, and where to go for help.
If that does work, then try to run the CGI script from your web browser. The url is dependent on where you put the pyblosxom.cgi script and how CGI works on your web server.
We’re going to try to break this down a bit into categories. Bear with us and keep trying things.
If you have problems and have gone through this section to no avail, ask a question on the pyblosxom-users mailing list or ask us on IRC. Details for both of these are on the website.
First, you should check to see if you have the minimum requirements for Pyblosxom on your system. They’re listed in the Requirements section of the Install chapter. If not, then please install them.
If Python is installed on your system, make sure the first line in pyblosxom.cgi points to the correct Python interpreter. By default, pyblosxom.cgi uses env to execute the Python interpreter. In some rare systems, /usr/bin/env doesn’t exist or the system may have odd environment settings. In those cases, you may edit the first line to point to the Python interpreter directly. For example:
#!/usr/bin/python
Then try running ./pyblosxom.cgi again.
If Python is installed on your system and the first line of pyblosxom.cgi is correct, check for permissions issues. pyblosxom.cgi is a script, so it needs execute permission in order to function. If those aren’t set, then fix that and try running ./pyblosxom.cgi again.
Check the error logs for your web server.
When you try to look at your blog and you get a HTTP 404 error, then you’re using the wrong URL. Here are some questions to ask yourself:
At this point, running ./pyblosxom.cgi at the command prompt should work fine. If you haven’t done that and you’re busy trouble-shooting, go back and review the deployment instructions.
If the problem is with Pyblosxom and not your web server, then you should see a pretty traceback that will help you figure out what the specific problem is.
If the traceback and information doesn’t make any sense to you, ask a question on the pyblosxom-users mailing list or ask us on IRC. Details for both of these are on the website.
If you don’t see a traceback, then you either have a configuration problem with your web server or a configuration problem with Python. The first thing you should do is check your web server’s error logs. For Apache, look for the error.log file in a place like /var/logs/apache/ or /var/logs/httpd/. If you don’t know where your web server’s error logs are, ask your system administrator.
Does the account your web server runs as have execute access to your pyblosxom.cgi script? If your web server does not have the permissions to read and execute your pyblosxom.cgi script, then your blog will not work.
Do you have plugins loaded? If you do, comment out the load_plugins setting in your config.py file so that Pyblosxom isn’t loading any plugins.
For example:
py["load_plugins"] = ['plugina', 'pluginb', ...]
would get changed to:
# commenting this out to see if it's a plugin problem
# py["load_plugins"] = ['plugina', 'pluginb', ...]
Check to see if the problem persists. Sometimes there are issues with plugins that only show up in certain situations.
Try changing the renderer for your blog to the debug renderer. You can do this by setting the renderer property in your config.py file to debug. For example:
py["renderer"] = "debug"
That will show a lot more detail about your configuration, what the web server passes Pyblosxom in environment variables, and other data about your blog that might help you figure out what your problem is.
If that doesn’t help, ask a question on the pyblosxom-users mailing list or ask us on IRC. Details for both of these are on the website.
Check out Flavours and Templates.
That’s ok. Pyblosxom supports formatters and entry parsers which allow you to use a variety of markups for writing blog entries. See the documentation on Writing Entries for more information.
Check out Categories.
We encourage you not to try any of this until you’ve gotten a blog up and running.
This section covers additional advanced things you can do to your blog that will make it nicer. However, they’re not necessary and they’re advanced and we consider these things to be very much a “you’re on your own” kind of issue.
If you ever have problems with Pyblosxom and you ask us questions on the pyblosxom-users or pyblosxom-devel mailing lists, make sure you explicitly state what things you’ve done from this chapter. It’ll go a long way in helping us to help you.
In the default installation, the Pyblosxom script is named pyblosxom.cgi.
For a typical user on an Apache installation with user folders turned on, Pyblosxom URLs could look like this:
http://example.com/~joe/cgi-bin/pyblosxom.cgi
http://example.com/~joe/cgi-bin/pyblosxom.cgi/an_entry.html
http://example.com/~joe/cgi-bin/pyblosxom.cgi/dev/another_entry.html
That gets pretty long and it’s not very good looking. For example, telling the URL to your mother or best friend over the phone would be challenging. It would be nice if we could shorten and simplify it.
So, we have some options:
Both methods are described here in more detail.
There’s no reason that pyblosxom.cgi has to be named pyblosxom.cgi. Let’s try changing it blog. Now our example URLs look like this:
http://example.com/~joe/cgi-bin/blog
http://example.com/~joe/cgi-bin/blog/an_entry.html
http://example.com/~joe/cgi-bin/blog/category1/another_entry.html
That’s better looking in the example. In your specific circumstances, that may be all you need.
You might have to change the base_url property in your config.py file to match the new URL.
Note
The base_url value should NOT have a trailing slash.
If you’re running on Apache, you might have to tell Apache that this is a CGI script even if it doesn’t have a .cgi at the end of it. If you can use .htaccess files to override Apache settings, you might be able to do something like this:
# this allows execution of CGI scripts in this directory
Options ExecCGI
# if the user doesn't specify a file, then instead of doing the
# regular directory listing, we look at "blog" (which is our
# pyblosxom.cgi script renamed)
DirectoryIndex blog
# this tells Apache that even though "blog" doesn't end in .cgi,
# it is in fact a CGI script and should be treated as such
<Files blog>
ForceType application/cgi-script
SetHandler cgi-script
</Files>
You may need to stop and restart Apache for your Apache changes to take effect.
Apache has a module for URL rewriting which allows you to convert incoming URLs to other URLs that can be handled internally. You can do URL rewriting based on all sorts of things. See the Apache manual for more details.
In our case, we want all incoming URLs pointing to blog to get rewritten to cgi-bin/pyblosxom.cgi so they can be handled by Pyblosxom. Then all our URLs will look like this:
http://example.com/~joe/blog
http://example.com/~joe/blog/an_entry.html
http://example.com/~joe/blog/category1/another_entry.html
To do this, we create an .htaccess file (it has to be named exactly that) in our public_html directory (or wherever it is that /~joe/ points to). In that file we have the following code:
RewriteEngine on
RewriteRule ^blog?(.*)$ /~joe/cgi-bin/pyblosxom.cgi$1 [last]
The first line turns on the Apache mod_rewrite engine so that it will rewrite URLs.
The second line has four parts. The first part denotes the line as a RewriteRule. The second part states the regular expression that matches the part of the URL that we want to rewrite. The third part denotes what we’re rewriting the URL to. The fourth part states that after this rule is applied, no future rewrite rules should be applied.
If you do URL rewriting, you may have to set the base_url property in your config.py accordingly. In the above example, the base_url would be http://example.com/~joe/blog with no trailing slash.
For more information on URL re-writing, see the mode_rewrite chapter in the Apache documentation for the version that you’re using.


-
protocol
Protocol protocol
The protocol that the message is using.
This is used in the MetaAgent's parsing of the message to decide
what behaviour to use.
-
recipient
java.lang.String recipient
The name of the recipient of the Message.
This MAY need changing to use a structure to identify inter-network level
communication as well as local network, for example wrapping the sender
in layers or using a complex object.
-
data
byte[] data
The data to be sent via the message.
The data is a byte array to allow for a range of data to be sent; as
sending just a string may be limiting when it comes to different uses
of the system.
-
sender
java.lang.String sender
The name of the sender of the message.
This may require the same alterations as the recipient variable to
discern whether the sender is from the same network or from an inter-
network level of agents.
-
flags
int flags
The flags for the message.
This will need developing on to provide additional information about the
message; such as do-not-reply, etc.
-
bounces
int bounces
The amount of bounces the messages can have before it dies.


The network topology graph shows the active rippled nodes and the connections between them. Every three seconds a snapshot is taken of the network topology, which records the status on each node in the network and its connections to other nodes. Each node is a rippled and the links between the nodes are tcp connections. A node's size corresponds to the number of connections it has and its color indicates the software version. Blue nodes represent use of the current stable version of the software, red nodes represent earlier versions and purple nodes represent versions newer than the current stable version.