Up to [cvs.NetBSD.org] / pkgsrc / lang / parrot
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
*: recursive bump for icu 76 shlib major version bump
*: revbump for icu downgrade
*: recursive bump for icu 76.1 shlib bump
revbump after icu and protobuf updates
*: recursive bump for icu 74.1
revbump after textproc/icu update
massive revision bump after textproc/icu update
*: recursive bump for perl 5.36
revbump for textproc/icu update
revbump for icu and libffi
*: recursive bump for perl 5.34
parrot: update HOMEPAGE
revbump for textproc/icu
*: Recursive revbump from textproc/icu-68.1
(lang/parrot) Change SUBST stage to pre-configure, by pkglint
(lang/parrot) Add SUBST To avoid work/.tools/bin/perl recorded in installation
*: bump PKGREVISION for perl-5.32.
Revbump for icu
lang/parrot: remove nonexistent file from REPLACE_INTERPRETER
Recursive revision bump after textproc/icu update
lang: align variable assignments pkglint -Wall -F --only aligned --only indent -r No manual corrections.
Bump PKGREVISIONs for perl 5.30.0
Recursive revbump from textproc/icu
revbump after updating textproc/icu
Recursive bump for perl5-5.28.0
Recursive revbump from textproc/icu-62.1
revbump after icu update
Revbump after textproc/icu update
revbump for requiring ICU 59.x
lang/parrot: Install manpages into ${PKGMANDIR}. Pass "--mandir=<dir>" to the configure script to set the correct location for installed manpages.
Revbump after icu update
Recursive revbump from textproc/icu 58.1
Bump PKGREVISION for perl-5.24.0 for everything mentioning perl.
Recursive revbump from textproc/icu 57.1
Recursive revbump from textproc/icu
Recursive PKGREVISION bump for all packages mentioning 'perl', having a PKGNAME of p5-*, or depending such a package, for perl-5.22.0.
Revbump after updating textproc/icu
Revbump after updating libwebp and icu
Bump for perl-5.20.0. Do it for all packages that * mention perl, or * have a directory name starting with p5-*, or * depend on a package starting with p5- like last time, for 5.18, where this didn't lead to complaints. Let me know if you have any this time.
recursive bump from icu shlib major bump.
Revbump after updating textproc/icu
Adding MAKE_JOBS_SAFE=no - parallel building causes the issues reported by nbjoerg@ and can be reproduced by Joyent bulk builds
Fix PLIST on non-darwin (forgot to test whether "make install" works >:-() Bumping revision
Updating lang/parrot from 4.8.0nb4 to 5.7.0 (for scheduled nqp and raduko * imports). pkgsrc changes: * PLIST variable VERSION => PARROT_VERSION * add PLIST awk rule to replace parrot's version string with ${PARROT_VERSION} * add a fix for build on MacOS X 10.8 Upstream changes since 4.8.0: 2013-08-20 release 5.7.0 - Build + Fixed GH#976 - Cannot load PCRE library during install on gentoo x64. - Community + All three of our GSoC students passed their midterms, and are on track to complete their Parrot and Perl 6 projects on time. Congratulations to Saurabh Kumar, Pawe�<82> Murias, and Denis Boyun! 2013-07-16 release 5.6.0 - Build + Makefile dependencies are now compatible with VMS make. - Documentation + The main README is now more helpful. 2013-06-18 release 5.5.0 - Build + Configure options are now allowed to be quoted. + Fixed build on Win32. + Updated location of NQP on Win32. + Fixed Parrot::Distribution detection. - Documentation + Noted that RESPONSIBLE_PARTIES is mostly out of date. - Tests + Stopped testing native PBC on 64bit LE, due to lack of access to such machine. - Release + Added tool: make_upload_commands.pl - Community + Parrot has been awarded 3 student slots in Google Summer of Code 2013! This means that 3 lucky students will be on a paid internship from Google to work on these accepted proposals: = Saurabh Kumar - "Update parrot-libgit2 to latest libgit2 release" https://gist.github.com/sa1/5468408 http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_kgp/11002 = Pawe�<82> Murias - "A Javascript backend for Rakudo" http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/pmurias/9002 = Denis Boyun - "Improve Web UI of App::Parrot::Create" https://gist.github.com/denisboyun/5472762 https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2013/chob_rock/9001 + YAPC::NA::2013 hosted 4 days of Hackathon, focusing on the next generation of Perl implementations. = Huge Success! + MoarVM was unveiled: https://github.com/MoarVM + P2 on Potion was debuted: http://perl11.org/p2/ 2013-05-21 release 5.4.0 - Core + Implemented the coth() and acot() math functions. + Fixed chomp to only trim a newline when it ends the string. [GH #958] + Added readlink() and Parrot_file_readlink(), with tests. [GH #967] - Build + Parrot now detects the CPU model on Linux systems, as well as detecting more CPU models on BSD, Cygwin, Solaris, Win32, and Darwin. ARM v7 is also now recognized. [GH #962] - Documentation + Threads examples now have proper POD sections and useful descriptions with links to references. + Added main description for Task PMC. + Added descriptions to trig methods in Float PMC. - Tests + Added improved test coverage targets "cover_new" and "fullcover_new". + Improved tests for acot(), coth(), acot() math functions. + Added tests for options passed to debugger. + Updated native PBC test files for string, number, and integer, which resolved 11 TODOs in the test suite. [GH #959] + Fixed test for the auto/arch config step. - Release process + Added message digests to crow.pir. + Added in release.json: "release.type" can be "devel" or "supported". + Refactored common code to sub in auto_release.pl. - Community + Parrot is part of the Hackathon at YAPC::NA::2013, in Austin, TX, USA! http://www.yapcna.org/yn2013/wiki?node=Hackathons + Parrot has been accepted to Google Summer of Code 2013! + Currently there are two high-quality proposals being worked on: https://gist.github.com/sa1/5468408 - parrot-libgit2 https://gist.github.com/denisboyun/5472762 - App::Parrot::Create 2013-04-16 release 5.3.0 - Build + Files generated by `make cover` are now correctly cleaned by `make` and ignored by `git`. - Tests + Internal testing of the Configure probe for Fink now works correctly with the --verbose flag. + Tests added for .sort method of ResizableFloatArray and ResizableIntegerArray. [GH #926], [GH #927] + Benchmarks added for .sort methods of various Array objects. [GH #175] + Coverage analysis added for pbc_disassemble. 2013-03-19 release 5.2.0 - Core + IO now only syncs buffers for the IO types where syncing makes sense. = PIO_VF_SYNC_IO flag added - Build + installable_pdump now has the correct rpath (blib corrected to lib). - Libraries + Tcl/Glob.pir has been removed. (PGE/Glob.pir remains intact) - Ecosystem + All Parrot tarballs are now symlinked to the 'all' directory, regardless of their true homes ('devel' or 'stable'), to better allow for automated downloads. ftp://ftp.parrot.org/pub/parrot/releases/all/ 2013-02-19 release 5.1.0 - Core + The .sort() method was added to the FixedFloatArray PMC + Improved detection of system memory for machines with >2GB + Improved pbc_to_exe support for spacey paths + Fixed Parrot_io_readall_s allocating too much string space - Build + Fixed generated MANIFEST files to omit $destdir - Documentation - Tests + .readall now checks that prior reads are respected. - Community + Weekly IRC meetings have resumed. #parrotsketch Tuesdays at 1930 UTC 2013-01-22 release 5.0.0 - Core + Remove duplicate library search path entries, move "." from the beginning to the end. [GH #368] + Install forgotten runtime include files: cloneflags.pasm packfile_annotation_keytype.pasm packfile_segments.pasm + Install include/parrot/pbcversion.h with the main package, not devel. + Install headers for dynpmc files. + Install libraries tgc.pbc, NCI/Utils.pbc, OpenGL/Math.pbc, PCT/Dumper.pbc, postgres.pbc, ProfTest.pbc and ProfTest/*pbc, String/Utils.pbc, URI/Escape.pbc, YAML/Dumper/Base.pbc, YAML/Dumper/Default.pbc + New experimental PARROT_DYNEXT environment variable + New experimental dynext_dirs config entry (same as PARROT_DYNEXT and -X) + Add OS error messages to FileHandle.open() error messages [GH #911] - Build + Generate MANIFEST.generated, cleanup MANIFEST, removed MANIFEST_configure.generated, add installation of forgotten files [GH #890] + perl Configure.pl now calls make clean if possible + Generate datadir/MANIFEST* for all installed files [GH #899] + Improved Configure.pl probes for --with-llvm + Replace / slashes with \ on windows for all Makefiles automatically. This improves cygwin interaction, like remote or cronjob smoking on windows. + Reenabled and fixed debugging line directives in pmc2c, ops2c not yet [GH #641] - Tools + Improved nci_thunk_gen (v0.02): handle void sig, add declaration + Fixed nci examples - Documentation + Re-added docs/ops, the generated ops summary and docs/packfile-c.pod + Improved pdd10_embedding + Document FileHandle.open() exceptions and error messages - Tests + Added t/library/lib_search_path.t 2012-12-18 release 4.11.0 - Core + Parrot now supports fast and lightweight OS threads, based on Nat Tucks's initial GSoC work on green threads and then Stefan Seifert's extension to true parallel OS threads as hybrid threads. See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.html and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/ + New parrot cmdline option --numthreads + Export new dynpmc_class_<ClassName> types [GH #870]. + Changed core_ops library format and ops2c to contain the PBC_COMPAT only, not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT cpp definition in include/parrot/oplib/core_ops.h, use only PARROT_CORE_OPLIB_INIT from config.h + Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision + Added getprotobyname method to the Socket PMC - Documentation + Marked unused API parameters + Install man pages for all binaries - Languages + nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test - Platforms + More compilation fixes on Windows without working mt.exe or ranlib=rem, enable smoking without git binary. - Tools + Re-enabled pbc_dump -h --header-only + Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost -Wunused-parameters safe. - Tests + failing Pod::Simple pod_todo.t tests are now skipped + added nqp-rx tests + removed duplicate ext/nqp-rx/t/p6regex tests + rewrote and enabled native_pbc tests [GH #394], renamed native_pbc testfiles 2012-11-21 release 4.10.0 - Core + Add PMCNULL check to result_info op + Fixed record separator bug on io handles - Build + Add -fpermissive so that nqp builds under gcc 4.7.2 + Fixed warnings for old ICU 4.4 - Platforms + More VMS fixes, but not yet done - Branches + The threads branch is ready to be merged, but nqp needs some changes, so it will be merged with 4.11.0. - Examples + Parrot mini-web server fixes 2012-10-16 release 4.9.0 - Core + Keep encoding information in the imcc optimizer, which fixes the concat op but probably many more cases with non-ascii encoded constant strings. [GH #837] + Fixed ByteBuffer set_string_native, which became out of sync with two internal buffers. [GH #835] + Preload Configure steps when called with perl -d Configure.pl [GH #833] + Strip unneeded config keys from installed config hash. Saves 6360 bytes from every installed executable. [GH #824] + Parrot_get_cpu_type returns now "unknown" for all unknown cpu types. On non-windows it returned before 4.9.0 a null string. [GH #846] + Fixed src/hash.c for platforms where size_t is unsigned (e.g. vms) [GH #854] - Build + Improved warnings for clang. [GH #843] + Cleaned wrong UNUSED(arg) macros in all pmc's due to an improved pmc2c compiler, which SHIMs all UNUSED args. [GH #836] + Added clang++ support and a new auto::alignof Configure step. [GH #844] + Fixed auto::inline for C++ compilers + Improved auto::llvm - Branches + The threads branch is almost ready to be merged. Some remaining races have been fixed. There are only some remaining platforms errors on darwin/x86. - Libraries + Fixed Mime::Base64: Split long lines at 76 chars. [GH #826] Support multi-byte codepoints. Use binary encoding, encoded files are now endian specific [GH #813 + #814], Added 2nd optional encoding arg to decode_base64(). - Documentation + Cleaned up removed parrot cmdline options -D/-O/-v from --help output and running.pod [GH #838] - Tools + Improved gdb pretty-printing for multi-byte strings
* .include "../../devel/readline/buildlink3.mk" with USE_GNU_READLINE=yes are replaced with .include "../../devel/readline/buildlink3.mk", and USE_GNU_READLINE are removed, * .include "../../devel/readline/buildlink3.mk" without USE_GNU_READLINE are replaced with .include "../../mk/readline.buildlink3.mk".
Bump all packages for perl-5.18, that a) refer 'perl' in their Makefile, or b) have a directory name of p5-*, or c) have any dependency on any p5-* package Like last time, where this caused no complaints.
Massive revbump after updating graphics/ilmbase, graphics/openexr, textproc/icu.
Revbump after graphics/jpeg and textproc/icu
increase BUILDLINK_ABI_DEPENDS.icu due to so change from 49 to 50. Also bump PKGREVISION for a few packages using it. The packages I did this for: net/yaz lang/parrot misc/openoffice3 (where I noticed the run-time failure due to missing shared library) www/webkit-gtk sysutils/open-vm-tools inputmethod/ibus-qt I didn't do this recursively or for all packages using icu since I didn't know if they used the shared library directly, some use was optional. The list of packages I didn't touch: devel/devhelp databases/idzebra databases/sqlite3 devel/gnustep-base/ finance/gnucash games/openttd graphics/shotwell lang/mono meta-pkgs/boost misc/calibre misc/libreoffice news/tin textproc/php-intl www/deforaos-surfer www/epiphany www/liferea-current www/midori
Update parrot to version 4.8.0. Local changes: o Remove patch now included upstream o Adapt PLIST to installed files Upstream changes: - Core + Prevent interpreter from dying twice + Complete rewrite of the IO system, including new unified IO PMC semantics. + The Integer and Float PMCs now have a get_pointer vtable which is needed when using NCI to bind to Fortran libraries such as LAPACK - Deprecations + Moved dynpmc/os to pmc os. loadlib 'os' is not needed anymore. - Platforms + Fixed for the FileHandle open method the append mode on Windows. + Fix compilation on Windows without working mt.exe + Detect GNU/Hurd as linux proper. + Fixed broken int3 trap on Solaris with gcc. + Updated the vms port on a YAPC::EU hackathon with vaxman and mvorl. - Tests + Improve testability with valgrind or thread-sanitizer
Bump all packages that use perl, or depend on a p5-* package, or are called p5-*. I hope that's all of them.
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
Upgrade parrot to version 4.7.0. Pkgsrc changes: o Simplify the patch to remove the work-directory rpath. Upstream changes: - Core + Added .all_tags() and .all_tagged_pmcs() methods to PackfileView PMC + Several build and coding standards fixes
Update lang/parrot to version 4.6.0. Upstream changes: - Core + Added init_pmc method to PackFileView. - Documentation + Added source lines from 'docs/index/book.json' to 'index.json' to make display of 'Parrot Developer's Guide: PIR (draft)' display more like the other books, e.g., 'PCT Book'. + Removed 'docs/index/book.json' as unnecessary. - Build + Improve on 'sudo make install' permission errors by using File::Copy::cp.
Upgrade parrot to version 4.5.0. Pkgsrc changes: - Add a patch to track the addition of Parrot_get_cpu_type() to misc.c, which is platform-dependent on NetBSD. - Fix pbc_to_exec.winxed so that there are no rpath build-directory references in installed executables. Reported upstream as issue #803. - Adjust PLIST to match installed files. Upstream changes: - Core + Added .write_bytes and .read_bytes methods to FileHandle and Socket PMCs. + Added Parrot_api_set_stdhandle, Parrot_api_new_call_object and Parrot_api_setup_signature functions to the embedding API + Removed the "can" VTABLE - Languages + Winxed snapshot updated to 1.9.1 - New syntax for parameters in multi - New syntax for initalization with new - Cast to var improved - IMCC + Removed .line, .file, setline and setfile directives from IMCC - Documentation + Fixed up Pod in 240 files to pass 't/codingstd/pod_description.t'. - Tests + Added 'docs/pdds' and 'docs/pdds/draft' as files for 'Parrot::Test::Pod.pm' to exclude. - Build + Reduced number of packages under 'lib/Parrot/Pmc2c/'. + Added method-level documentation to several of the remaining packages. + Added 'docs/pdds' and 'docs/pdds/draft' as files for 'Parrot::Test::Pod.pm' to exclude. - Community + M1, a C-like language that targets M0 had a burst of development and now has many working examples such as recursive Fibonacci and recursive factorial : https://github.com/parrot/m1 + Parrot bindings to LAPACK are being worked on as part of Google Summer of Code: https://github.com/leto/parrot-lapack
Update parrot to version 4.4.0. Pkgsrc changes -- minor adaptation to installed files. Upstream changes: - Core + Most internal calls to libc exit(x) have been replaced with Parrot_x_* API calls or PARROT_FORCE_EXIT - Documentation + 'pdd31_hll.pod' made stable in 'docs/pdds/'. + Updated main 'README' to 'README.pod' + Updated various dependencies, e.g., 'lib/Parrot/Distribution.pm'. + Updated all 'README' files to 'README.pod' files. + Added 'README.pod' files to top-level directories. - Tests + Update various tests to pull from new 'README.pod' + Updated 't/tools/install/02-install_files.t' to pull from new 'README.pod' - Community - Platforms - Tools + pbc_merge has been fixed to deduplicate constant strings and merge annotations segments
Update lang/parrot to 4.3.0. Pkgsrc changes: * Remove patch-ak, as the fix is now adopted upstream. Upstream changes: - Core + Winxed snapshot updated to 1.7.0 + Add type introspection to lexical variables. + New 'tools/release/parrot_github_release.pl' script to automate updates to the 'parrot.github.com' and 'parrot-docsx' repositories. + Numerous casting and consting fixes thanks to GCC 4.8. - Documentation + Updated 'docs/projects/release_manager_guide.pod' + Updated 'docs/projects/release_parrot_github_guide.pod' + Improved function documentation. - Tests - Community - Platforms + Fixed alignment issues on ia64, sparc and mipsel. + Fixed a platform-specific issue with dlclose().
Update to parrot version 4.2.0. Upstream changes: - API Changes + The signature of getprop was changed from (PMC,String,PMC) to (PMC, PMC,String) for consistency - Core + Parrot Calling Conventions (pcc) now reuses Continuation PMCs internally, which reduces GC work by 25% and improves the fib.pir benchmark by 6% + Winxed snapshot updated to 1.6.devel 44a04cfa7b + Improved the detection of Clang-ish compilers during configuration + Fixed a possible segfault bug when reading packfiles with no constants or main_sub + By default, Parrot has now elevated these GCC warnings to errors during compile time: implicit-function-declaration, undef, missing-braces, nested externs, old-style-definition, strict-prototypes, + The OS Dynamic PMC now has separate functions to unlink a file and remove an empty directory (rmdir) + Fix building on Cygwin due to an improperly named DLL file + Various small bug fixes pointed out by static and dynamic analysis tools - Branches + Work on M0 continues now in the m0 branch, which contains both implementations (currently C and Perl) and specification. + Good progress has been made on the threads branch which builds on the green_threads branch. This gets Parrot much closer to being able to utilize multiple CPU cores seemlessly. More details at http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf - Documentation + New release manager documentation for parrot.github.com : http://git.io/parrot-github-guide - Community + Parrot was accepted to Google Summer of Code 2012! Ideas Page: http://git.io/parrot-gsoc-2012
Recursive bump from icu shlib major bumped to 49.
Update parrot to version 4.1.0. Upstream changes: - Core + Shared libraries and installable binaries are now stripped if built with --optimize on Cygwin, which greatly reduces their size on disk + New experimental PCC-related ops added to core. - Documentation + Revised 'docs/project/release_manager_guide.pod' - Tests + Parrot now uses Travis CI http://travis-ci.org + Parrot Continuous Integration (CI) with Travis CI means every commit of Parrot is now compiled and tested on gcc, g++ and clang with various Configure.pl options. + CI Notifications are sent to parrot-dev, the #parrot IRC channel and Smolder + Cardinal and Rakudo spec tests also on Travis CI
Update parrot to version 4.0.0. Upstream changes: - Core + Several cleanups to the interp subsystem API + Cleanups and documentation additions for green threads and timers + Iterator PMC and family now implement the "iterator" role + A bug in Parrot_ext_try was fixed where it was not popping a context correctly - Documentation + Docs for all versions of Parrot ever released are now available at http://parrot.github.com - Tests + Timer PMC tests were converted from PASM to PIR
Update parrot to version 3.11.0. Upstream changes: - Core + packfile api and pbc handling improvements + smarter recursion tracking across threads + new "pop_upto_eh" op for finer-grained exception handling + subroutine-level profiling runcore cleanups + improved window support - Languages + new math builtins in winxed (abs, sinh, cosh and tanh) + better inline support in winxed + squaak improvements (sub as expression, new read() builtin) - Documentation + many new man pages thanks to gci students - Tests + updated example code for FileHandle and Iterator + coding standards fixes
Update parrot to version 3.10.0. Subsequent updates to follow... Pkgsrc changes: * Adapt to changes in list of installed files * Remove a now-irrelevant patch, add another as a workaround for a timing-dependent patch (done differently in later revisions) Upstream changes: - Core + The mark VTABLE was added to the Select PMC + The Parrot::Embed Perl 5 module was removed from parrot.git and now lives at https://github.com/parrot/parrot-embed + A set_random method was added to the Integer PMC, so random numbers can be generated without needing to load math dynops + A new implementation of green threads was added to Parrot, in preparation for a robust hybrid threading system. Green threads are currently not available on Windows. - Languages + Winxed - 'multi' modifier improved - throw "string" now emits throw instead of die - several optimizations in generated code - improved some error dianostics - Community + Parrot Foundation was accepted to Google Code-In 2011. We could always use more volunteers. Task ideas are on the wiki: https://github.com/parrot/parrot/wiki/Google-Code-In-Task-Ideas - Documentation - Tests + Added tests for recently-fixed bugs using return :flat and ResizableStringArrays.
Fix download URL.
Update to parrot version 3.9.0. Pkgsrc changes: * Add a patch to fix usleep(1000000) problem causing test failures, submitted upstream. * Adapt to changes in the set of installed files. Upstream changes: - Core + The whiteknight/kill_threads branch was merged, which removes the old and broken thread/concurrency implementation. Better and more flexible concurrency primitives are currently being worked on. This also involved removing some of the last vestiges of assembly code from Parrot as well as removing the share and share_ro vtables. + random_lib.pir was removed, since better alternatives already exist + The freeze and thaw vtables were removed from Default PMC, because they weren't useful and caused hard-to-find bugs. + A new subroutine profiling runcore was added. It can be enabled with the command-line argument of -R subprof. The resulting data can be analyzed with kcachegrind. + Added get_string VTABLE to FixedIntegerArray and FixedFloatArray PMCs + The update() method was added to the Hash PMC, which updates one Hash with the contents of another. This speeds up rakudo/nqp startup time. - Languages + Winxed - Updated snapshot to version 1.3.0 - Added the builtin sleep - Modifier 'multi' allows some more multi functionality - Community + New repo for the Parrot Alternate Compiler Toolkit, a re-implementation of PCT in Winxed: https://github.com/parrot/PACT - Documentation + We are in the process to migrating our Trac wiki at http://trac.parrot.org/ to Github at https://github.com/parrot/parrot/wiki + Packfile PMC documentation was updated - Tests + Select PMC tests improved to pass on non-Linuxy platforms
Add missing devel/readline buildlink. /^CHECK_WRKREF_SKIP/s/PKGVERSION/VERSION/ (PKGVERSION has the nbX in it) Bump PKGREVISION
Fix this so that it installs cleanly, by doing several things: 1) fix the PLIST to correspond with the files added+removed 2) fix the interpreter in some installed files 3) ignore work-directory references in 12 installed files. Yes, this is wrong, and has been reported to parrot, issue #201. PKGREVISION not bumped, since this would not create a package earlier.
Update parrot to version 3.8.0. Parrot 3.8.0 News: - Core + New tools/release/auto_release.pl script automates most of release - Languages + Winxed - Updated snapshot to version 1.2.0 - allowtailcall modifier in try --debug command-line option, __DEBUG__ predefined constant and __ASSERT__ builtin - namespace, class, and ~ (bitwise not) operators - Implicit nested namespace in namespace and class declarations - -X command-line arg - Documentation + Improved release manager guide - Tests + New Makefile target "resubmit_smolder" to resubmit test results + New Makefile target "all_hll_test" runs the test suite of all HLLs and libraries known to work on Parrot + New Makefile target "interop_tests" run language interoperability tests, which runs as part of the normal "make test" as well
Upgrade parrot from version 3.5.0 to 3.7.0. Pkgsrc changes: o Adapt to changes in installed contents. Upstream changes: Parrot 3.6.0: - Core + Class.add_vtable_override now allows you to overwrite an override + Integers, floats and strings can now be stored in lexical variables. Previously, only PMCs could be stored in lexicals. + VTABLE_substr has been removed. VTABLE_substr_str has been renamed to VTABLE_substr + Added a new PackfileView PMC type, an intended replacement for the deprecated Eval PMC. + The is_integer vtable on the String PMC now works for all string encodings. + Unicode error messages on Win32 now work correctly. + A memory leak in IMCC was fixed. - Languages + The snaphost of Winxed included with Parrot was updated to version 1.0.0 + Winxed has migrated to Github: https://github.com/NotFound/winxed Pore + Added mem_sys_strndup function. + Added new load_bytecode_p_s opcode as an eventual replacement for load_bytecode_s + Added new :tag() syntax to IMCC for PIR + Improved configuration support for msys + known-buggy parrot_debugger is no longer installed - Languages + Winxed - Updated snapshot to version 1.1.0 - multi functions and methods - cast to var - load_packfile builtin - __NAMESPACE__ and __CLASS__ predefined constants - Documentation + The Archive::Tar and Archive::Zip libraries now have POD docs
Update to version 3.5.0. Upstream changes: - Core + Parrot_PMC_destroy, Parrot_PMC_mark and Parrot_PMC_invoke were removed from the public extension API. + PAST now has PAST::Stmt node types, supports reusable temporary registers. + Test coverage of the embedding and extending interface is now at least 95%. + A snapshot of Winxed is now included in Parrot core to facilitate writing core Parrot tools from a higher level language than PIR. - Languages + Winxed - Improved compile time scope search. - Added 'using namespace' statement. - Compiler classes and functions now live in the Winxed;Compiler namespace. - Tests + The Parrot test suite harness now understands the HARNESS_TIMER environment variable. Setting it to a true value will show timing results for a test run. + IPv6 tests are now parallel testing friendly.
recursive bump from textproc/icu shlib major bump.
Update parrot to version 3.4.0. Local changes: o Remove local fix which has been adopted upstream. Upstream changes: 3.4.0 news: - Core + The Generational Mark and Sweep garbage collector is the new default. + The --gc-nursery-size command line argument was added. + Parrot now gets entropy from the underlying OS. + The NCI subsystem now supports 8, 16, 32 and 64 bit integers. + The NCI subsystem now supports "long long" and "long double" signatures. Not all platforms/compilers support these non-standard types, so developers are cautioned to take note that using them reduces portability. + Many more OpenGL functions in the Parrot OpenGL bindings are available, which required the above-mentioned signatures. + Bytecode-related embedding api functions moved to src/embed/bytecode.c. - Languages + Winxed - Use 'using extern' for module imports. - Improved stage 0 prefix ++ and -- operators. - Allow 'null' in conditional operator. - Several examples are updated. - Community + Google Summer of Code Bonding period is going well. Students are mostly done with their classes and much code will flow soon. - Documentation + More PCT introductions are available. 3.3.0 news: - Core + The isa and isa_pmc vtables can now be overridden from PIR + IMCC has a new improved external interface + A new IMCCompiler PMC adds prototype PDD31-alike functionality for the PIR and PASM compilers + New --with-llvm option to Configure.pl, which will link to LLVM if it is available - Community + Parrot Virtual Machine was accepted into Google Summer of Code 2011 - Ecosystem + Rosella adds a stable "Event" library to implement a publish/subscribe mechanism - Tests + The test coverage of the extend_vtable subsystem was greatly increased
Update parrot from version 3.1.0 to 3.2.0. Pkgsrc changes: o Adapt existing patches to changes in upstream code o Add a fix for the stat() / lstat() tests in parrot; will be reported upstream as a bug. Upstream changes: - Core + Full support for Unicode filenames on Linux and Win32 + The configuration option --cxx is gone + New Generational GC implemented. To enable it run Configure.pl --gc=gms + Now op definitions are semantically parsed. It opens possibilities for future optimizations of parrot core. + A statement convert the '.param' PIR systax + A PMC is implemented for low-level buffer access which separate the representation from the pointers + Support added for 'long double', 'long long', and 64-bit to StructView + In math.h are tools available for Inf/NaN + Signature PMCs are used pervasively - Languages + A few tests in Cardinal are fixed + A binary .dmg is created of Rakudo Star for OS X + Winxed - Minor fixes, refactors and cleaning - New predefs replace, push and provide a way to access multiple return values - Operators exits, class and .* (indirect method call) added - $loadlib directive - -o option to installable driver added - Indent generated PIR is added to improve clarity and avoid imcc pitfalls with non indented sub bodys - Community + M0 roadmap is in progress - Documentation + 'make docs' target, which was serving only to generate superfluous POD files, has been removed. + Svn remnants from PDDs are removed - Tests + Added 'make release_check' target so that Release Manager can double-check tarball + Probes added for 'long long' and 64-bit C types - Rosella Rosella is a collection of tools and building blocks for Parrot + A working proxy library is created, that make mostly-transparent custom proxies for many types of Parrot PMCs + A mockobject testing library is created, using the new proxy library + The PLA test suite is updated to use the new Rosella testing tools, including the new mockobjects to test callbacks
Update parrot to version 3.1.0. Pkgsrc changes: o Adapt to changes in installed files o One of the files which are patched have changed location Upstream changes: New in 3.1.0 - Core + Exception PMCs are now subclassable from PIR + IPv6 is now supported and tested + Added Parrot_ext_try function to extend API (experimental), to allow implementation of try .. catch construcs in C extensions. + We now have a YAML library called YAML::Tiny, a port of YAML::Tiny from Perl 5 + Deprecated/experimental features are now stored in api.yaml in an easy-to-parse format, which will allow automated tools easy access to this data. This replaces DEPRECATED.pod, which no longer exists. + Improved GC latency + Improved GC performance on low-memory systems + Improved packfile annotation lookup complexity + Removal of unused code and SVN based code - NQP + A repository for a new NQP version which has a new object model is created at http://github.com/perl6/nqp - Languages + Cardinal (Ruby on Parrot) now compiles and passes it's test suite on master and is looking for developers : https://github.com/parrot/cardinal + Cardinal can send smoke reports with "rake smoke" or "parrot setup.pir smoke" + Jaspers, an implementation of Javascript on Parrot, now has a Github repo and is looking for developers: https://github.com/leto/jaspers - Community + The following Parrot Google Code-In students were grand prize winners: Fernando Brito, Brazil David Czech, Canada Nolan Lum, United States Matt Rajca, United States Tony Young, New Zealand Daniel Kang, United States We are very proud of them for their fine work and congratulate them for achieving top finalist status! For more info, see: http://google-opensource.blogspot.com/2011/02/google-code-in-grand-prize... - Documentation + Many new Parrot-related terms were added to docs/glossary.pod + Removal of most remaining references to SVN + Internal project documentation is included in html output - Tests + Test suite now passes on NetBSD 5.1 + Test coverage increased greatly for the Embed/Extend subsystem, thanks to a TPF grant: http://leto.net/dukeleto.pl/2011/01/parrot-embed-grant-update-2.html
Upgrade parrot from version 2.11.0 to 3.0.0. Pkgsrc changes: o Remove local patch which is no longer needed. o Adapt PLIST to changes in the set of installed files. Upstream changes: - Core + A new embedding API is available in "parrot/api.h" and documented in docs/pdd/pdd10_embedding.pod . + Packfile PMCs were refactored and can now be used to produce runnable bytecode. + Packfile manipulation code now throws embedder-friendly exceptions rather than printing error details directly to stderr. + Unicode support for file IO, environment variables, program names, and command-line parameters was improved. + An experimental gdb pretty-printers in tools/dev for Parrot STRINGs and PMCs is now available. (gdb 7.2 or later and Python are required) + c2str.pl and pmc2c.pl improvements result in a noticeably faster build. + Bugs in our Digest::sha256 library and bit-related dynamic ops were fixed by GCI student Nolan Lum. Both now work correctly on 32 and 64 bit systems. - Languages + ;)XD - OMeta for Winxed https://github.com/plobsing/ohm-eta-wink-kzd - Community + tree-optimization by GSoC student Tyler L. Curtis joined the nest and now lives at http://github.com/parrot/tree-optimization . + Plumage now lives at http://github.com/parrot/plumage and is installable. + Christmas went as scheduled. The Parrot team does not take credit for this event. - Documentation + HTML documentation generation has been rewritten and greatly simplified. + We have improved documentation in docs/project/git_workflow.pod about keeping a fork of parrot.git in sync. + Translations of our README in various languages are now in the docs/translation directory, thanks to Google Code-In students. - Tests + A better way to write "todo" tests with Parrot's Test::More was implemented by GCI student Fernando Brito. + Major increases in test coverage of many core PMCs, dynamic PMCs and dynamic opcodes resulted from GCI and the intrepid students it attracted. + Jonathan "Duke" Leto set up Debian Linux x86_64 and sparc32 smokers in the GCC Compile Farm, which continually submit smoke reports with a variety of configuration options and compilers. Thanks, GCC! + Makefile dependency checking is now automatically tested, resulting in a more reliable parallel build. + Coverage tests were improved for platforms with and without Devel::Cover.
Update parrot from version 2.10.1 to 2.11.0. Pkgsrc changes: o Adapt PLIST to changes in the set of installed files o Adjust one patch to match the changed source Upstream changes: - Core + Just In Time native call frame generation using LibFFI + PIR op find_codepoint is no longer experimental, it is now supported + Several public functions in libparrot have been brought up to standard naming conventions. + Improved linked-list implementation in GC + set_addr opcode is being replaced with the new set_label opcode in core libraries + Removed deprecated CodeString PMC + Added close, is_closed, read, readline methods to Socket + Added experimental MappedByteArray PMC type + Added Parrot_warn_experimental, to warn the user about experimental features + Code for frontend executables moved from src/ to frontend/ + Support for chunked receive in LWP library. + Added a "quickcover" make target - Languages + PIRC - left the nest and is currently at https://github.com/parrot/pirc/ + Community - Our README was translated into the following languages by Google Code-In students and mentors: Polish README.polski Spanish README.espanol German README.deutsch - Documentation - Tests + Test coverage increase on PMCs: String, Integer, NameSpace, Complex, EventHandler + 'make quickcover' target added to speed up most essential parts of coverage analysis + 'tools/dev/headerizer.pl' refactored to improve maintainability (no change in functionality)
Bump PKGREVISION from icu shlib major bump.
Update parrot from version 2.9.1 to 2.10.1. Pkgsrc changes: o Copy FreeBSD's method to determine physical memory (fixed upstream in later versions) o Adapt to changes in the installed contents. Upstream changes: - Core + We are on github now! https://github.com/parrot/parrot + Configure, build and test subsystems were made Git-aware + New parrot_config key 'osvers' which contains Operating System Version information + Updated to the latest nqp-rx + A proper exception is now thrown on IO read errors + Garbage Collector optimizations and memory leak fixes + Deprecated charset ops were removed + Configure system learned to detect IPv6 + The mk_language_shell and create_language scripts have not yet been ported to Git. - Documentation + How To Use Git to work on Parrot https://github.com/parrot/parrot/blob/master/docs/project/git_workflow.pod + Git Terminology https://github.com/parrot/parrot/blob/master/docs/project/git_terminology.pod - Platforms - Testing + Increased coverage on: String, FixedBooleanArray, PMCProxy, LexPad - Community + Macports portfile updated to 2.6.0 + A Fedora package for PL/Parrot ( postgresql-plparrot ) was created This package allows you to write stored procedures for PostgreSQL in PIR or Rakudo Perl 6 http://pl.parrot.org + Parrot Foundation is teaming up with The Perl Foundation and taking part in Google Code-In 2010.
Upgrade parrot from version 2.8.0 to 2.9.1. Pkgsrc changes: o Adapt to changes in the set of installed files. Upstream changes: Parrot 2.9.1 News: - This is a bugfix release to address an excessive slowdown in the Rakudo Perl 6 build. If you run out of memory on a box with < 512 MB physical RAM, please report it to us. Parrot 2.9.0 News: - Core + Parrot and Rakudo's build and tests can now be run under the profiling runcore + IPv6 is now detected, laying the groundwork for future networking improvements + mk_language_shell.pl and create_language.pl no longer require an installed parrot + String PMC's 'reverse' method is now faster and supports all encodings + improvements and simplifications in internal string processing + Added API for adding STRINGs to the gc root set + Speed up ord, substr, index and string comparison opcodes - Testing + "make smoke" supports parallel testing by honoring TEST_JOBS + Added tests for Socket PMC, StringBuilder PMC, ByteBuffer PMC, mk_language_shell.pl, create_language.pl + Fixed "Configure.pl" about missing tests + Parrot and Rakudo Perl 6 now have access to the GCC Compile Farm + Testing on Darwin/PPC - Git Migration + Most developer tools have been ported to Git + Majority of developer docs have been written for Git - Platforms + Parrot can now be built on Minix
Update parrot to version 2.8.0. Pkgsrc changes: o Adapt to new package contents. Upstream changes: - Core + Inlined hashing and comparison functions + Hash memory allocation moved from system malloc to lazy allocated + Avoided infinite catching of exceptions while dying from exception + Some svn fixes + Added a check for duplicate vtable entries in PMCs + Building Parrot with Perl 5.12 and gcc-4.5 / g++-4.5 + Eliminated cruft left over after dynops_mapping + Improved charset and string encoding + Better organisation of programs by reposition it to "tools/build" and "tools/release" + Implemented Exception clone vtable function + Added experimental function Parrot_getpid and getpid method + --gc-threshold command line argument added, which controls the % of memory wasted by the GC + Closed a lot of tickets - Testing + Added more core pmc tests + Rearranged some tests with C coverage + We now have Smolder back, at http://smolder.parrot.org . Submit reports with "make smoke" + skip_all implementation in Parrot's Test::More completed - GitMigration + Set up a test site for github trac plugin at http://mksig.org/trac/ + Code of Trac plugin at github is on http://github.com/cotto/github-trac + Parrot is now mirrored on github at http://github.com/parrot/parrot - Compilers + Fixed problem with imcc HLL in load_bytecode difference between loading a pbc and compiling a pir
Update parrot from version 2.6.0 to 2.7.0. Pkgsrc changes: o Adapt to changes in installed files, and a new perl script. Upstream changes: - Core + cleanups in packfile and freeze/thaw handling + Hash optimizations that improve HLL startup and run time + As always, many bug fixes and other optimizations - Runtime + some runtime library cleanups - Testing + added more tests to improve coverage + new codingstd test for documentation in .pmc files - Documentation + added documentation to .pmc files (some still missing but headers in place) + general documentation improvements and bringing up-to-date - NQP-rx + Updated version included from http://github.com/perl6/nqp-rx includes speed improvements
Upgrade parrot from version 2.5.0 to 2.6.0. Pkgsrc changes: o Adapt to new content being installed (PLIST) and new perl script which needs tweaking. Upstream changes: - Core + Plug some memory leaks + As always, bug fixes and some optimizations - Runtime + added (experimental) URI::Escape - Testing + Improved test coverage of core parrot - Documentation + Updated the Squaak tutorial to use modern NQP-rx and PCT - Platforms + The Fedora package 'parrot-devel' install the files for syntax-highlighting and automatic indenting for the vim editor - NQP-rx + Updated version included from http://github.com/perl6/nqp-rx includes new or improved: regex backtracking, named assertions, interactive mode, and setting (a minimal but useful runtime library)
Update parrot from version 2.4.0 to 2.5.0. Pkgsrc changes: o Adapt PLIST and Makefile to what's in the package source and what is now being installed. Upstream changes: * Core o Added ByteBuffer PMC to allow direct byte manipulation o Modified some PMC vtable functions to reduce complexity, simplifying coverage. o Modified PAST to generate symbolic PASM constants in PIR output. o General STRING API cleanups o Increased test coverage of core PMCs o Fixed up 'exit' opcode, added CONTROL_EXIT exception type. o Experimental 'unroll' opcode renamed to 'finalize' * NQP-rx o Added proper support for multisubs and multimethods o Fixed sigspace handling ** quantifier in regexes o Added \e strings o Added use of inversion lists for charclass lists in regexes * Platforms o EPEL (Extra Packages for Enterprise Linux) packages for RHEL6.beta are available * Begin moving towards Lorito, the ops refactor to enable pervasive self-hosting and JIT compilation. o All ops are now built with the self-hosted opsc compiler. o For more Information about Lorito see: + http://trac.parrot.org/parrot/wiki/Lorito + http://trac.parrot.org/parrot/wiki/LoritoRoadmap
Update parrot from version 2.3.0 to 2.4.0. Pkgsrc changes: o Now pass the --optimize flag to configure o Pull in devel/gmp/buildlink3.mk so that multi-precision arithmetic is enabled (and gets testing) o Adapt PLIST and Makefile to what's present and being installed Upstream changes: - Core + Various long-standing bugs in IMCC were fixed + STRINGs are now immutable. + use STRINGNULL instead of NULL when working with strings + Fixed storage of methods in the NameSpace PMC + Added :nsentry flag to force method to be stored in the NameSpace + Added StringBuilder and PackfileDebug PMCs + Added experimental opcodes find_codepoint and unroll - Compilers + Fixed reporting of line numbers in IMCC + Removed deprecated NQP compiler, replaced with new NQP-RX + Removed NCIGen compiler - Deprecations + Tools to distribute on CPAN were removed + Deprecated dynpmcs have been removed to external repositories + Removed RetContinuation PMC + Removed CGoto, CGP, and Switch runcores - Tests + Many tests for the extend/embed interface were added + done_testing() is now implemented in Test::More - Tools + The fakexecutable tapir is renamed parrot-prove + Performance fixes to the pbc_to_exe tool + Fix data_json to work outside of trunk + The dynpmc GzipHandle (zlib wrapper) was added + The library Archive/Tar.pir was added. + The library Archive/Zip.pir was added. + The libraries LWP.pir, HTTP/Message.pir & URI.pir were added. - Miscellaneous + Six Parrot-related projects accepted to GSoC + Improve use of const and other compiler hints
Update parrot from version 2.2.0 to 2.3.0. Pkgsrc changes: o Adapt our patches to up-stream changes. o Fix PLIST to match what's being installed. Upstream changes: - Core + Allow passing parameters to the dynamic linker ('dlopen' improved) + loadlib opcode added + Calling conventions are now much more consistent, and follows natural semantics of handling arguments and return values + Recursive make for src/dynpmc removed + Datatype STRINGNULL for a single Null STRING added + config_lib.pasm replaced with config_lib.pir - Platforms + Improved handling of new compilers + Cygwin packages will be updated again with Parrot releases + Fedora packages add desktop files + gzip and bzip2 compressed tar files for releases - Tools + tapir executable added; tapir is a TAP test harness + Added TAP options --merge --ignore-exit - Miscellaneous + 3 month cycle for supported releases + Review and vote of GSoC applications
Update from version 2.1.1 to 2.2.0. Pkgsrc changes: o Adapt patches to upstream changes. Upstream changes: - Core changes + Most internal allocations now use the GC + RNG non-randomness fixes + Elimination of much dead code - API changes + PMCs can now be initialized from an int + Many legacy ops are removed - Platforms + Sun cc and Intel icc support have been restored + Compiler invocation no longer goes through a Perl script - Tools + NCI thunks are now generated by self-hosted PIR code
Explicitly allow ${WRKSRC} in rpath entries. The package is relinking itself during the build.
Update parrot from version 2.1.0 to 2.1.1. Upstream changes: o Parrot 2.1.1 is a maintenance release which fixes a memory leak identified in Parrot 2.1.0
Update parrot from version 2.0.0 to 2.1.0. Pkgsrc changes: o Adapt patch to work around dl-handle re-use to eliminate warnings o Adapt PLIST to new contents Upstream changes: - Core changes + GC performance and encapsulation were greatly improved. + PMC freeze refactored. + More Makefile and build improvements. - API Changes + The Array PMC was removed. + Several deprecated vtables were removed. + The OrderedHash PMC was substantialy improved. - Platforms + Packaging improvements on some operating systems. - Tools + Some cases in pbc_merge are now handled. + Improvements were made to the dependency checker. + New tool nativecall.pir added.
Update from version 1.9.0 to 2.0.0. Pkgsrc changes: o Adjust PLIST to fit with new contents. Upstream changes: Parrot 2.0.0 News: * Features o Context PMCs now support attribute-based introspection o Context and CallSignature PMCs merged into CallContext o .lex directive throws exceptions when used with incorrect register types * Platforms o Packaging improved for free OS distributions o PPC, PPC64, and ARM now tested when running Linux * Performance o Minor improvements to the profiling runcore o Improvements from the CallContext PMC merge * New deprecations o In/out parameters in STRING modification functions o Void handling in NCI signatures o Parameter passing opcodes order in PBC * Tests o Continued migration of core tests from Perl 5 to PIR * Tools o dependency checker improved * Miscellaneous o Deprecation cycle length changed to three months from six o GC accuracy improved o PMC freeze improvements; much more reliable o Makefile improvements for dependency handling
Update parrot from version 1.8.0 to 1.9.0. Pkgsrc changes: o Adjust patches to match new code o Adjust PLIST to what's being installed Upstream changes: - Core + Made profiling runcore output format configurable and extensible options include "pprof" and "none" ("binary" and "callgrind" are planned) + Added environment variables to specify profiling output type and filename (PARROT_PROFILING_OUTPUT and PARROT_PROFILING_FILENAME) + Began merging Freeze/Thaw and Bytecode generator/loader - Compilers + Included latest nqp-rx compiler, with many improvements - GLOBAL:: package identifier - dynamic variables look in global namespace - $obj."$method" syntax - :p(os) and :c(ontinue) option on regexes - try/CATCH/CONTROL handling - support leading & on subroutine declarations - allow "category:" names (for builtin operators) - simple version of smartmatch operator - simple regex matches - updated HLL::Compiler with new import/export methods - Miscellaneous + Portability updates for RTEMS, and Intel architectures with GNU compilers + Completed conversion of ticket tracking system from RT to Trac + New draft of PDD31 for HLL export API and import implementation + Several (build time, runtime) performance improvements + Converted many tests to PIR, reducing test execution time + Various bugfixes, code cleanups, and coding standard fixes
Update parrot from version 1.7.0 to 1.8.0. Update OK'ed by agc@ Pkgsrc changes: o Replace perl and parrot interpreter references where we can (one perl module not available at pre-configure time not done) o Remove patches which are no longer necessary, since they either came from upstream or have been adopted there o Update the PLIST to sync with what's being installed Upstream changes: - Functionality + The FileHandle PMC now exposes the exit code of child process that was run as pipe. + Experimental support for overriding VTABLE invoke in PIR objects was added. + The method 'type' was added to the PackfileAnnotations PMC. + The internals of the parrot calling conventions, PCC, were reworked. All call paths now use a CallSignature object for passing arguments and return values. + The new API-function 'Parrot_ext_call' was added for calling into C-land. + The fixed-size allocator was improved. + The files installed by 'make install-dev' are now covered by 'make install' as well. + The experimental ops 'fetch' and 'vivify' were added. + The -I option to the command 'parrot' now prepends items to the search path. + The Context struct was substituted with auto attributes (context_auto_attrs branch). + Use the osname determined in auto::arch in subsequent configuration steps (convert_OSNAME branch). + Eliminated dependence on Perl 5 '%Config' in auto::format (auto_format_no_Config branch). + MultiSub PMCs now stringify to the name of their first candidate, instead of the number of candidates. + The platform detection at the start of the configuration process was improved. + The 'lineof' method on CodeString objects now precomputes line number information to be more efficient on variable-width encoded strings. + P6object now supports .WHO and .WHERE methods on protoobjects. - Compilers + A shiny new self-hosting implementation of NQP has been added in ext/nqp-rx. - New NQP available as nqp-rx.pbc or parrot-nqp fakecutable. - NQP includes direct support for grammars and regexes, including protoregexes. - NQP has a new PAST-based regex engine (intended to replace PGE). - Regexes may contain code assertions, parameters, lexical declarations, and more. - Double-quoted strings now interpolate scalar variables and closures. - Subroutine declarations are now lexical by default. + PCT - PAST::Block now supports an 'nsentry' attribute. - PAST::Var allows 'contextual' scope. - Attribute bindings now return the bound value. - Platforms + Fixes for the port of Parrot to RTEMS were applied. Yay, first port to a real time OS! + On NetBSD, shared libs are now used. - Performance + Use the the fixed-sized allocator in the Context and the CallSignature PMC. + Many small speed improvements. - New deprecations + MT19937, the Mersenne twisted pseudorandom number generator, is now hosted on github and will be removed from the Parrot core. (eligible in 2.1) + The 'Parrot_call_*' functions for invoking a sub/method object from C are deprecated. They are replaced by 'Parrot_ext_call'. (eligible in 2.1) + All bitwise VTABLE functions are deprecated. (eligible in 2.1) + All bitwise ops will become dynops. (eligible in 2.1) - Realized deprecations + The slice VTABLE entry was removed. + The last traces of the 'malloc' garbage collector were removed. + Parrot_pcc_constants() was renamed to Parrot_pcc_get_constants(). + The deprecated functions from the Embedding/Extension interface were removed. + The library YAML/Parser/Syck.pir was removed. + The VTABLE function instantiate_str() was removed. + Building of parrot_nqp was removed. - Tests + The test coverage of the time-related ops was much improved. + New testing functions in Test::More: lives_ok() and dies_ok(). + The Perl 5 based test scripts t/op/bitwist.t, t/op/comp.t, t/op/inf_nan.t, t/op/literal.t, t/op/number.t, t/op/sprintf2.t, and t/op/00ff-dos.t were converted to PIR. + The test scripts t/op/annotate.t and t/op/time.t have begun to be translated from Perl 5 to PIR. + In some tests the dependency on %Config from Perl 5 was eliminated. - Documentation + The meaning of 'p' means in NCI function call signatures was clarified. - Tools + The stub for a new language, as created by mk_language_shell.pl, now relies on the PIR-based tools, which are replacing the Perl 5-based tools. + The library Configure.pir was added. + The library distutils.pir was added. - Miscellaneous + The mailing list parrot-users and a corresponding google group was created, http://groups.google.com/group/parrot-users. + Many bugfixes, code cleanups, and coding standard fixes.
Update to version 1.7.0. Pkgsrc changes: o Adapt the patch to t/op/io.t to a change done upstream slightly after 1.7.0 was released. o Add a patch which fixes a problem exposed by one of the tests, related to library cloning, which caused dlclose() to be called twice with the same handle value, ref. Parrot ticket 1340. Upstream changes: New in 1.7.0 - Functionality + Parrot_capture_lex has been added to the PARROT_EXPORT API + PARROT_MAX_ARGS has been increased from 8 to 16 to allow for ops that take mo re than 8 args - Performance + The profiling runcore now caches metadata for improved performance - Maintenance and cleanup + Expanded the Parrot debugger documentation + Parrot debugger now uses the new Parrot STRING API + Continue to port rest of internals to use the STRING API - Deprecations + The JIT subsystem has been removed and is being written from the ground up. More information can be found at https://trac.parrot.org/parrot/wiki/JITRewrite + Implicit optional named parameters (eligible in 2.1) + Continuation-based ExceptionHandlers (eligible in 2.1) + Use of undocumented variables in class_init (eligible in 2.1) + Parrot_oo_get_namespace (eligible in 2.1) - Bugfix + Improved line number tracking in IMCC - Tests + Converted many more Perl 5 tests to PIR + Expanded test coverage of the CallSignature, Namespace, FixedPMCArray, ResizeableIntegerArray and ExceptionHandler PMCs
Pullup ticket #2916 - requested by he parrot: build fix Revisions pulled up: - lang/parrot/Makefile 1.23 - lang/parrot/PLIST.Darwin 1.1 - lang/parrot/PLIST.shared 1.1 - lang/parrot/distinfo 1.17-1.18 - lang/parrot/patches/patch-af 1.3 - lang/parrot/patches/patch-ag 1.3 - lang/parrot/patches/patch-ai 1.1 - lang/parrot/patches/patch-aj 1.1 --- Module Name: pkgsrc Committed By: he Date: Wed Oct 21 14:23:14 UTC 2009 Modified Files: pkgsrc/lang/parrot: Makefile distinfo Added Files: pkgsrc/lang/parrot/patches: patch-af patch-ag patch-ai patch-aj Log Message: Update parrot from version 1.6.0 to 1.6.0nb1. Pkgsrc changes: o Enable shared libraries for NetBSD, and deal with the resulting fallout: tests which are written in C need to point their run-path to the build version of the shared libraries. o The default is shared libs with .so, except for on Darwin, where shared libs are named differently. The Darwin part is untested. --- Module Name: pkgsrc Committed By: he Date: Thu Oct 22 11:31:44 UTC 2009 Modified Files: pkgsrc/lang/parrot: distinfo Log Message: I'm terribly sorry, patch-ai had the incorrect checksum. This update fixes it. --- Module Name: pkgsrc Committed By: he Date: Thu Oct 22 12:59:58 UTC 2009 Added Files: pkgsrc/lang/parrot: PLIST.Darwin PLIST.shared Log Message: Sorry once again, these two files should have been committed as part of the 1.6.0nb1 update.
Update parrot from version 1.6.0 to 1.6.0nb1. Pkgsrc changes: o Enable shared libraries for NetBSD, and deal with the resulting fallout: tests which are written in C need to point their run-path to the build version of the shared libraries. o The default is shared libs with .so, except for on Darwin, where shared libs are named differently. The Darwin part is untested.
Update from version 1.5.0 to 1.6.0. Pkgsrc changes: o Remove two patches which have been included upstream. Upstream changes: - Functionality + Added a fixed-size structure allocator to the Garbage Collector + Added a "lazy" mode to the PObj and Fixed-Size memory allocators + Added a profiling runcore, which generates Callgrind-compatible output + Added lexical subsystem opcodes: find_dynamic_lex, store_dynamic_lex + Converted Contexts to garbage-collectable PMC structures + Created a new Context API + Enhanced the PMC allocator to automatically allocate ATTR structures - Performance + Optimized opcodes to cache the current Context for subsequent lookups + Reduced string comparisons in VTABLE_isa - Maintenance and cleanup + Began proper encapsulation of STRING API + Unified all PMC destruction functions + Unified Continuation PMC and Parrot_cont structure + Unified Sub PMC and Parrot_sub structure + Removed PMC_EXT structure + Removed PMC_Sync from PMC + Removed UnionVal from PMC structure - Bugfix + Fixed several stack-walking bugs in Garbage Collector code + Fixed bug when copying a NULL STRING, now returns empty STRING struct - Tests + Converted several Perl5 tests to PIR + Expanded test coverage of NameSpace PMC - Compilers + Made Parrot Compiler Toolkit available in the base install
Minor update (build fix, so no version bump): o Correct PLIST issues o Remove code to handle libparrot.so; that library is not being installed as a shared library
Update from version 1.4.0nb1 to 1.5.0. Pkgsrc changes: o Add patch-af and patch-ag so that the math library variant selection actually works as intended. Upstream changes: - Core + Removed several deprecated functions and features + Removed bsr, jsr, branch_cs, and ret opcodes + Removed global stacks system + Changed OPS file format to include explicit preamble + Changed all "new 'Iterator'" instructions into 'iter' instructions + Removed Configure.pl options for specifying non-working GC cores + Removed unexecuting code as found by Coverity + Improvements to the Parrot Debugger + Added experimental fixed-size structure allocator to the GC + Added experimental lazy arena allocation to the GC + Removed the defunct PASM1 compiler object + Refactored hashes, keys, and iterators + Added "corevm" make target to build Parrot without all the supporting libraries + Removed Random PMC type and added in a "rand" dynop + Optimization and Improvements to the NCI thunk generator + New include file libpaths.pasm - Compilers + Multiple .local with same name and different type is now an error on IMCC. - Platforms + Improved support for detecting Fink and Macports + Updated search directories for libraries - Documentation + "Parrot Developers Guide: PIR" released to publisher and available to purchase + Improved documentation about Parrot Debugger + Update PGE Documentation - Miscellaneous + Added tests + Fixes to code, documentation, and standards
recursive bump for icu shlib version change except already done.
Update from version 1.3.0 to 1.4.0. Upstream changes: - Core + Key and Iterator refactor + Major pbc_to_exe generated code speed improvement + New "Infinite Memory" GC core for demonstration purposes + gc_debug runcore and GC-related heisenbug fixes + Elimination of variable expansion in parrot_config + CLI arguments are processed as Unicode by default + Substantial optimizations in NCI + Parrot builds on Win64 + Hashes can use native types as keys and values + Fixed installed pbc_to_exe + Simplification of PMC generation code + Improved GC encapsulation and API documentation - Documentation + List of candidates for embedding API (docs/embed.pod) + PIR book sent to publisher - Testing + Several conversions of Perl test to pure PIR. + C indentation coding standards test improvement + Improved test coverage of example code - Deprecations + Removal of PGE rules: <null> <fail> <sp> <lt> <gt> <dot> + Removal of PGE methods: .text .item .result_object + Deprecation of most dynops + Miscellaneous + Beginnings of OpenGL::Math library; OpenGL bindings and library marked experimental + Localizing and consting fixes + Many memory and thread-related leaks plugged
Update from version 1.1.0 to 1.3.0. OK'ed by agc@ Upstream changes: Parrot 1.3.0 News: - Core + Optimized parts of the IO system + Fixed inheritance hierarchy of FileHandle and Socket PMC types + Fixed leaks involving subroutines and Parrot_Context + Cleaned up and refactored GC internals, including fixes and optimizations + Optimized PMC class manipulations to use type numbers instead of string names + Fixed problems involving hashval calculations in strings + Removed unnecessary MULTI dispatches in built-in PMCs + Fixed memory leaks involving PMCs that were not properly destroyed + Fixed creation of PMCProxy PMCs in correct namespaces + Added preliminary Pipe support + Fixed cloning of Object PMCs + Added root_new opcode + Added initial versions of Packfile PMCs with read/write capabilities - Compilers + Fixed several memory leaks in IMCC + Updated PCT to use root_new opcode + Added support for keyword "self" in NQP - Documentation + Improved and expanded /docs/book + Updated project documentation + Defined 'experimental' status and procedures in DEPRECATED.pod - Miscellaneous + Cleaned code and improved code-level documentation + Various bugfixes, code cleanups, and coding standard fixes + Added an experimental compiler library to help use PIR libraries from HLLs + Updated OpenGL library and examples to support experimental HLL import Parrot 1.2.0 News: - Core + Fixes for pir classes inheriting from core pmcs. + Cleaned up headers and reorganized some sources into subsystem directories. + Clean up PMCs so libparrot.so exports far fewer vtable/method symbols. + Clean up the GC API. + Several unicode identifier improvements in IMCC. - Deprecations + Protoobject stringification is gone. - Documentation + Rewrite several core documents. + Many reworks, improvements & additions to the Parrot Book. + Installation PDD is launched out of draft. - Tools + Fixes for running the language shell generator outside the parrot tree. + Several fixes for developing and building HLLs from an installed parrot. + Configure.pl now has a --no-line-directives option to ease source level debugging. - Miscellaneous + Portability updates for macports, netbsd, mingw32, hpux. + Several (build time, runtime) performance improvements. + Lots of updates to examples and tests. + Various bugfixes, code cleanups, and coding standard fixes.
Update from version 1.0.0 to 1.1.0 (now that 1.2.0 is about to be released :) Pkgsrc changes: o Add LICENSE setting (artistic-2.0) o Centralize version number setting o Assume that this supports user-destdir Upstream changes: - Core + Added op: load_language, find_caller_lex + socket IO are back as PMC + refactor some PMC: Hash, ManagedStruct - Compiler + PGE - Allow \x, \c, and \o in enumerated character classes (incl ranges) - Add initial greedy-only version of ** quantifier + PCT - Add HLL source line bytecode annotations - Add another dumper format to assist syntax highlighters - Revise mk_language_shell.pl to updated create_language.pl - Deprecations + Removed ops: gcd, exec, classname, need_finalize, runinterp, substr_r + Removed dynamic op: mul + Removed .HLL_map directive; use interp's .hll_map() instead + Removed PMCs: slice, bound_nci, ref + Removed Configure.pl option: --pmc + Removed PMC union struct - Documentation + Book - Reorganization and many improvements & additions - Tools + Add a parrot-fuzzer - Miscellaneous + Improve Debian/Ubuntu package + various bugfixes, code cleanups, and coding standard fixes
Update from version 0.4.11nb1 to 1.0.0. Pkgsrc changes: o New MASTER_SITES o Take maintainership (apologies if I'm stepping on someone's toes) o The package now has built-in knowledge if the CPU arch has working jit support (currently i386, powerpc and arm, of which the two first have been tested), so there's no need to direct the jit support from the main Makefile o Update PLIST o Added patches to port to NetBSD/powerpc (reported upstream) o Added patch to remove a GNUism from one of the shell scripts (test using == in place of =) Upstream changes: o Too many to mention; there have been some 20-odd number of intervening releases since the 0.4.11 release of 2007-Apr-17, according to http://docs.parrot.org/parrot/latest/html/docs/parrothist.pod.html which contains the release history. OK'ed by wiz@.
patch-aa (with dragonfly config) got merged upstream. Applying the patch with a more tolerant version of patch (like netbsd's) gives two copies of the definitions in the same file, with who knows what consequences. Applying the patch with a less tolerant version of patch fails. So, remove it, and bump PKGREVISION just in case.
Update parrot to 0.4.11. Based on patch provided in PR 36157, update to 0.4.10. New in 0.4.11 - Compilers: + IMCC: added documentation for C-based Parrot Calling Conventions, refactorings and bug fixes + PGE: new perl6regex front end reflecting recent S05 syntax changes + PIRC: new prototype PIR parser - Languages: + Updated Lua, PHP ("Plumhead"), BASIC, pynie + Lua implements environment - Design: + PDD15 "Objects" - details added, and draft approved - Documentation: + Added guidelines for PMC documentation - Implementation: + PDD15 implementation is largely complete, including role-based composition, introspection, and C3 method resolution order + new Exporter PMC for importing globals between namespaces + new string utilities for radix conversion + PCCINVOKE and Parrot_PCCINVOKE allow calling using the full Parrot Calling Conventions from PMCs and C code respectively - Build: + Refactorings and improvements in test coverage for 'Configure.pl' - Misc: + many bugfixes, enhancements, and code cleanup + added example subversion config file + extended support for gcc, icc, and other compilers + extended support for Solaris and other platforms New in 0.4.10 - Compilers: + IMCC: Parrot calling conventions now available between two C PMCs (PMINVOKE) + PGE: Match object improvements + smop: added Attribute and Class PMCs + HLLCompiler: improvements for interactive mode - PAST: + extended binding to a list of variables - Languages: + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), Ruby ("Cardinal") + Update PIR, regex, Zcode + New language: Pynie - a Python compiler for Parrot + Lua implements require and many other ops, improved regex support + Remove parakeet - Design: + PDD01 "Overview" - updated architecture and platform information + PDD15 "Objects" - details on roles, objects, and classes added + PDD22 "I/O" - added async ops and Status PMC details - Documentation: + Added guides for Metacommitter, Relase Manager, and Cage Cleaner roles - Implementation: + Object, Class, Role, and Attribute PMC implementation has begun + Perl 5 module "Parrot::Embed" now compiles and links on all platforms - Build: + Major improvements in test coverage for 'ops2c.pl' - Misc: + New utility: Crow, a template processor + New library module: Config/JSON for reading/writing JSON files + many bugfixes, enhancements, and coding standard updates, code cleanup New in 0.4.9 - Compilers: + IMCC: Parrot calling conventions now available in C PMCs, allowing named, optional, slurpy, and flat parameter passing + PGE: extended support for Perl 5 Regexes + smop: prototype object model implementation + hllcompiler: refactored to run a configurable set of compilation stages - PAST: + redesigned assign/binding to support Perl 6 binding semantics - Languages: + Updated Lua, PHP ("Plumhead"), Tcl ("ParTcl"), perl6, perl5 + New language: PIR - a PGE-based implementation of Parrot PIR + perl6 now supports binding (':=') and 'join' + lua generates tail calls, and supports its own regex flavor (PGE-based) + Pheme still works, huzzah! - Design: + PDD21 "Objects" - rewritten + PDD22 "I/O" - updated and 'TODO' tests added - Documentation: + Interface stability classification standards approved + Roles and Responsibilities documented approved + Official 'drafts' directory created (was 'clip') - Implementation: + More NameSpace and OS PMC methods implemented + Parrot executable fullname and basename now available in PIR/PASM code + new 'chomp' library function - Build: + Major improvements in test coverage for 'ops2pm.pl' - Misc: + many bugfixes, enhancements, and coding standard updates + extended support for Sun Workshop Compilers + Parrot now builds on PocketPC platform New in 0.4.8 - Compilers: + HLLCompiler: added tracing options, modified api + PGE & TGE bugfixes and updates - PAST: + added global and lexical variable support + added looping constructs, arrays, hashes - Languages: + Updated PHP ("Plumhead"), Tcl ("ParTcl"), forth, perl6, lua, abc, APL, WMLScript, punie + ParTcl is passing > 24.9% of Tcl cvs-latest test suite + perl6 now supports hashes, arrays, method calls, arity-based multisubs, quoted terms, ranges (non-lazy), try blocks, $! - Design: + PDD01 "Overview" - updated + PDD22 "I/O" - rewritten and approved - Test Suite: + Converted Perl 5 Regex tests to PIR, with notable speedup + Added tests for opcodes, compilers, languages, and coding standards - Build: + Major improvements in test coverage for 'pmc2c.pl' - Misc: + many bugfixes, enhancements, and coding standard updates + extended support for non-core platforms including Cygwin, Tru64 New in 0.4.7 - New languages: PHP ("Plumhead"), Forth - Updated languages: Ruby ("Cardinal"), Tcl, Lua - Remove old Python implementation from Parrot repository; the new Python language code is hosted at http://pirate.tangentcode.com - Compilers: + PGE updated with more expressions, latest changes to S05 + new Perl6 grammar compiler - Integration: + Perl 5 module "Parrot::Embed" allows easy embedding of a Parrot runtime into a Perl 5 program - PIR: + new :init pragma for subs that must run before the main function + new :vtable pragma to identify subs that override PMC vtable methods, eliminating the need for special subroutine names + PIR parser/compiler does not stop on first syntax error + Vanilla register allocator ("register alligator") greatly improves performance compiling large functions + Eliminated limit on number of PIR macros - PMCs: + hash lookups return null instead of None for missing keys - Design: + PDD13 "Bytecode files: format and manipulation" - new + PDD10 "Embedding" - new + PDD25 "Concurrency" - rewritten + PDD15 "Objects" - new section on redesign requirements + PDD07 "Coding standards" - significant updates and automated tests - Test Suite: + Many many more new tests - Build Process: + autoconf compatible install options - Misc: + Namespace refinements + Coroutine improvements + An impressive swarm of other bugfixes and enhancements New in 0.4.6 - New languages: Ruby ("Cardinal"), Javascript ("ecmascript") - Updated languages: Tcl, dotnet, bc, Pheme, Punie, WMLScript - Updated compilers: PGE, TGE - IMCC updates: + ".loadlib" directive expresses dependencies + ".namespace" with no parameter goes to HLL root + lexer is reentrant (reentrant grammar in progress) - Namespace improvements: + new suite of opcodes to access namespaces and globals ("find_global" and "store_global" will be phased out) + namespace '' no longer means HLL root - Design document updates: namespaces (pdd23), basic types (pdd17), embedding - Updated tool requirements for developers: flex 2.5.33, bison 2.1, perl 5.6.1 - New to-do list for people new to Parrot: cage/todo.pod - The usual plethora of bugfixes and enhancements New in 0.4.5 - unicode subroutine names - hierarchical class names finished including MMD support - new dotnet CLI to PIR translator - improved TGE code and compiler - APL: vector handling - new STM branch in the svn repository - the usual bugfixes and enhancements New in 0.4.4 - hierarchical class names - APL compiler - under development - understands simple vector ops, strings - demonstrates use of Unicode in Parrot - pgc, a compiler for rules and operator precedence parsers - Major redesign and improvements for PGE - compilers understand named parameter options - :ratchet option implemented to support non-backtracking quantifiers - TGE (tree grammar engine) for tree transformations - tgc, tree grammar compiler - perl6 compiler - support for many operators, lexical scalars, regex matches - new pheme (Parrot scheme) compiler New in 0.4.3 - namespaces partially implemented - rulec, Perl6 rule compiler - PGE improvements including return values for closure - parts of a Perl6 parser based on PGE - complex trigonometric methods - type of Sub PMC is now overridable by HLL - NetBSD support - many bug fixes and improvements New in 0.4.2 - improved PPC and x86 JIT support including JIT compilation of very simple PASM/PIR subroutines - preliminary libreadline support - better trace and debug features - pkgconfig support - META.yml to support proper indexing on CPAN - new opcode: hcf (in "my_ops" in dynamic op library) - new File pmc for file specific ops (is_dir, is_file, copy, rename...) - named arguments and parameters (both :named("") and => syntaxes) - ongoing config improvements - tons of bug fixes and other small improvements - too much to list all
USE_LANGUAGES=c c++
Fix installation after PKGREVISION bump.
Recursive revision bump / recommended bump for gettext ABI change.
Update to 0.4.1, from Anders Nor Berle in PR 32480. New in 0.4.1 - Installation: 'make install' is using standard locations now (/usr/local is the default --prefix) - Produce static and shared libraries on some systems - Configure system rearragement - OS pmc started (mkdir,cd,cwd,rm,umask,stat) - Shootout examples - Test files are now testable with 'prove' - Smoke (and smokej) outputs progress - PIR supports: I = A < B (>,<=,>=,==,!=) - Add support for octal number constants - partcl updates: - almost finish [string]; start [file] - add build tool for generating inline'd tcl builtins from templates. - Jako updates: NCI, subroutines, global variables and constants all work. (Gregor) Failed 3/190 test scripts, 98.42% okay. 15/4580 subtests failed, 99.67% okay.
Update to 0.4.0, provided by Anders Nor Berle in PR 32448. New in 0.4.0 - New lexical handling and closure support including better introspection for caller and outer - PGE (Parrot Grammar Engine) provides now compilers for P6Rule, P6Grammar, P5Regexp, and Glob - ca. 1000 new tests including 800 for Perl5 regexp - Improved unicode charset and encoding support - Calling conventions for exception handlers - Punie (Perl 1) uses TGE (Tree Grammar Engine) to convert from PGE match objects to AST via two steps of tree transformation grammars - New languages: amber and lua - The usual code fixes, cleanup, and improvements, including an overhaul of the config and test framework New in 0.3.1 - Variable sized register frames are finished. Each subroutine gets the amount of registers that it actually needs. No more spilling. - Vastly improved PGE (Parrot Grammar Engine) including shift-reduce, precedence-based expression parser and support for matching of bracketed text delimited by e.g. ()[]{}'" - uniccode character classification (is_upper ...) - support for heredoc syntax in assembler - improved examples, basic JSON support - debian packaging support - the usual improvements, bug fixes, and cleanup - test count exceeds 3000 New in 0.3.0 - New calling conventions implemented: see PDD03 for details - Merge multiple Parrot bytecode (PBC) files into a singe PBC file - 'make smoke' target going beta - bc now supports if statements, comparison ops, prefix inc/dec - ParTcl adds [lassign], [switch] (partially); [expr] converted to a compiler - Many exciting doc updates, tests, and bugfixes, too numerous to mention New in 0.2.3 - Dynamic classes now compile on Windows (including ParTcl) - New Super PMC allows easy access to superclass methods - Implement C3 method resolution order (just like Perl6 & Python) - ParTcl has new PIR-based parser and passes more Tcl tests - added character class support in Globs to PGE - added language implementations of unlambda, Lazy-k - many bugfixes, including GC and memory leaks - the new calling scheme continued to evolve in branches/leo-ctx5 New in 0.2.2 - new call scheme: docs/pdds/pdd03_calling_conventions.pod - partial implementation of the new calling conventions PASM only, don't mix PIR foo() call syntax with the new scheme - grammar and rule support in PGE - the Parrot Grammar Engine - TCL passes >10% of the tcl test suite - the usual bugfixes and improvements New in 0.2.1 - better HLL support (short names for object attributes, and .HLL and n_operators pragmas) - string encoding and charset can now be set independently - experimental mmap IO layer for slurping files - distinct debug and trace flag settings - glob support in PGE - new character classification opcodes and interfaces New in 0.2.0 - parrot repository is now under subversion - MMD (Multi Method Dispatch) enhanced - new unary and infix opcodes that return new result PMCs - dynamic scalar PMCs inherit now almost all from Parrot core PMCs - more unification of PMCs and ParrotObjects - tailcalls for functions and methods - PGE (Parrot Grammar Engine) reworked - Pugs creates Parrot code and Pugs is a registered compiler now - new languages/lisp - the usual bug fixes and improvements New in 0.1.2 - New string handling code. Strings now have charset and encoding - Parts of a generation garbage collector - Better Python code, separated in dynclasses - Parrot Grammar Engine - Improved test coverage and documentation New in 0.1.1 Parrot 0.1.1 is an intermediate release with tons of updates and fixes. - Python support: Parrot runs 4/7 of the pie-thon test suite - Better OS support: more platforms, compiler, OS functions - Improved PIR syntax for method calls and <op>= assignment - Dynamic loading reworked including a "make install" target - MMD - multi method dispatch for binary vtable methods - Library improvement and cleanup - BigInt, Complex, *Array, Slice, Enumerate, None PMC classes - IA64 and hppa JIT support - Tons of fixes, improvements, new tests, and documentation updates. A lot is unfinished and keeps changing. Nethertheless Parrot is stable and usable at the surface, while internals are moving. New in 0.1.0 - "Ladies and gentlemen, I give you... objects!" - Huge documentation overhaul - More supported platforms, s. PLATFORMS - Basic thread support for pthread based architectures - Basic event handling for timers and signals including: - PASM callbacks for NCI (native C) functions. - Improved platform configuration - COW stacks now working, stacks code redone - Structure handling vastly improved - Random PMC and rand primitives - Better subroutine call syntax in PIR - Make PIR subroutines compliant with pdd03 - Improved profiling (DOD, GC timings) - Hash code improvements, incl. random key order support - Experimental freeze/thaw code for some PMC types - IO improvements for buffered layer and Win32 - String iterators - String bitwise vtables - Many new opcodes - Support for JIT, where malloced memory isn't executable - Priority DOD scheme for objects that need timely destruction - Improved byte code loading (e.g. onLoad functions) - Language updates: forth, Perl6/P6C, m4 - Libraries: Getopt_Long, SDL, Dumper, Sort - new JAPH examples - Unified imcc and parrot test handling - Many new tests (make test reports 1386 tests) - Numerous bug fixes New in 0.0.13 - The Big Move: Parrot source and build files rearranged into sub dirs - Build imcc as parrot - Objects more finished - Delegate vtable methods to byte code - Binary multi-method dispatching - Isa and does methods for PMCs - Call byte code from C - Start of extension interface - Experimental struct handling - Catch access to NULL PMCs - Experimental network socket interface code and opcodes - IO fixes and improvements - Dynamic opcode libraries - Fix-assigned opcode numbers - Argument flattening for function calls - More native call interface (NCI) signatures - Ncurses, postgres, and pcre interface libraries - Forth language is vastly improved - BSD and Win32 build improvements - Many new tests and fixes New in 0.0.12 - This number intentionally left blank New in 0.0.11 - Executable output - Dynamic PMC registration - Trial exception system - Beginnings of object system - Iterators - Ordered hashes - I/O system improvements - References - Documentation for basic PMC types - IMCC support of Parrot Calling Conventions - Runtime loading of chartypes (and other string improvements) - Conditional breakpoints - Dramatically accelerated sweeps for finalizable objects - Small PMCs (PMCs split into core and extensions) - Loadable bytecode packfiles - Constant PMCs - Sub variants that deal with the stack correctly - Switched runops core - Line numbers in warnings - Environment access - Many documentation cleanups - Conversion to CPS style! - BASIC debugger and many other wacky features - Filename, line number parsing support in IMCC New in 0.0.10 - IMCC integration - eval - some more benchmarking - cgp core - optimized math ops - intersegment branches - more complete use of PObjs - beefed up packfiles - sub/continuation/coroutine fixes - better NCI (native calling interface) - many imcc improvements - jako improvements New in 0.0.9 - Native function calling interface (Dan) - Stack/list aggregate rewrite (Leo) - Scratchpads (Jonathan Sillito) - Preliminary DotGNU support -- type conversion ops (Gopal V + Leo) - Buffer/PMC unification (Leo) - stabs debugging support for JIT (Leo) - Jako overhaul (Gregor) - Optional Lea allocator (Leo) - Parrot sprintf (Brent) - Miniparrot (Josh) - PMC Properties (Dan) - Various JIT improvements (D. Grunblatt + Leo) - Extensible packfiles (Juergen) - Restructured PMC hierarchy (Leo) - Real Scheme (Juergen) New in 0.0.8 - Several new grammars and a BNF -> perl5 and perl6 converter (Jeff) - Working Perl6 REs (Sean) - Keyed Access (Tom Hughes et al) - New PMCs (Alberto et al) - Better Documentation - New COW semantics - GC acceleration (Mike Lambert) - Lexical scope (Jonathan Sillito) - IMCC patches - JIT for the ARM New in 0.0.7 - Perl 6 Grammar and Compiler (Sean) - Subroutines, coroutines, and continuations (Melvin) - GC improvements (Peter Gibbs, Mike Lambert) - Global variables (Melvin) - Intermediate bytecode compiler (Melvin, Angel) - And much, much more. New in 0.0.6 - New assembler that support keyed types (Jeff) - New macro layer, allowing constants (Jeff) - New Configure.pl (Brent) - Changes to bytecode format, endian issues resolved (Melvin) - GC improvements and bug fixes (Peter Gibbs, Mike Lambert) - JIT compiler rewrite (Jason and Daniel) - Parrot assembler in Parrot (Daniel) - Parrot debugger (Daniel) - BASIC polished, Eliza.bas is new (Clint) - Cola compiler committed and working, with limited OOP (Melvin) - Keyed aggregates (Steve Fink) - Global ops (Melvin) - Compile-time speedup (Melvin) - Much documentation - New PDDs (Dan) - Contributed tetris and lzw files - And many more, from the cast of thousands New in 0.0.5 - Full GC - Perl Scalar support in PMCs - Array and Hash types almost ready for prime-time - Internal support for keyed types - EMACS editing mode - New PDDs - New Language - BASIC - Regular expression compiler - More tests - Many, many bug fixes, enhancements, and speedups New in 0.0.4 - Arena-based memory allocation system - Copying GC - New IO subsystem - "Predereferencing" mode - ./parrot -P - 22% speedup - JIT compiler - ./parrot -j - Parrot now builds warnings-clean on many platforms - Many more PMC methods implemented - Regular expression operations - Added a FAQ - Basic support for embedding Parrot in other programs - Warnings support - Added PDDs to distribution - Bignum library - PMC inheritance - Added an assembly optimizer - Improved string encoding/type support - Many more tests - Source reformatting - Major refactoring in packfile library - More Miniperl functionality - New PMC "clone" operator - Beginnings of key-based access to PMCs - arrays and hashes - MOPS comparisons in examples/mops/ New in 0.0.3 - PMCs! - Perl base scalar types implemented - A new minilanguage, Scheme - Much improved documentation - Register stacks pushing and popping - User stack pushing, popping and rotating - Jako updates: subroutines, more example programs, optimizations - test_prog renamed to 'parrot' - Added features to the assembler: @ for current location, and global labels - Build tweaks for VMS - Bytecode typing clean-ups - More platforms: OS X, HPUX, OS/2 - The proliferation of runops cores reduced to one fast and one slow one - Opcode tracing, bounds checking, profiling - Vastly improved string support, with separation of encoding and charset - Lots more tests - Multiple interpreter creation support - the beginnings of threading - Much better resource handling - the beginnings of GC New in 0.0.2 - Parrot now works on all core platforms - A large number of tests, in the standard Perl testing framework - A new minilanguage (Jako) which compiles to Parrot assembly - Documentation about the assembly language (docs/parrot_assembly.pod) - Separate modules for assembly (Parrot::Assemble) and bytecode manipulation (Parrot::PackFile::*, packfile.c) - Assembler completely rewritten - Better operand-type guessing in the assembler - Assembler support for '\n' etc. in string constants - Code reformatted to match the coding standards - New ops for register-constant INTEGER comparisons - Macro expansion in the assembler - IVs and NVs renamed to more friendly INTVAL and NUMVAL - Hard-coded pack("") formats removed - Better handling of floating-point numbers in assembler - Moved floats to constant table (fixing many alignment issues)
Get rid of USE_PERL5. The new way to express needing the Perl executable around at either build-time or at run-time is: USE_TOOLS+= perl # build-time USE_TOOLS+= perl:run # run-time Also remove some places where perl5/buildlink3.mk was being included by a package Makefile, but all that the package wanted was the Perl executable.
Create directories before installing files into them.
Rename ALL_TARGET to BUILD_TARGET for consistency with other *_TARGETs. Suggested by Roland Illig, ok'd by various.
COMMENT should start with a capital letter.
s/netbsd.org/NetBSD.org/
Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages. Should anybody feel like they could be the maintainer for any of thewe packages, please adjust.
Initial import of parrot-0.0.1, a pre-pubescent byte code interpreter
which may form part of Perl or Python's future, into the NetBSD packages
collection.
Provided in PR 13933 by Chris Pinnock <[email protected]>, tarted
up somewhat by me.
PARROT: A bytecode language possible to be used in the future by
Perl 6 and a Python.
The idea was originally an April fool's joke...
"What we're releasing today is a very, very early alpha of the Parrot
interpreter. At the moment, we have support for some simple
operations on integer, floating point and string registers, and the
ability to read in and execute bytecode. We also have an assembler
which can generate bytecode output from Parrot assembly."
Initial revision