Wiki này chạy trên MediaWiki, bản quyền © 2001–2024 Magnus Manske, Brion Vibber, Lee Daniel Crocker, Tim Starling, Erik Möller, Gabriel Wicke, Ævar Arnfjörð Bjarmason, Niklas Laxström, Domas Mituzas, Rob Church, Yuri Astrakhan, Aryeh Gregor, Aaron Schulz, Andrew Garrett, Raimond Spekking, Alexandre Emsenhuber, Siebrand Mazeland, Chad Horohoe, Roan Kattouw, Trevor Parscal, Bryan Tong Minh, Sam Reed, Victor Vasiliev, Rotem Liss, Platonides, Antoine Musso, Timo Tijhof, Daniel Kinzler, Jeroen De Dauw, Brad Jorsch, Bartosz Dziewoński, Ed Sanders, Moriel Schottlender, Kunal Mehta, James D. Forrester, Brian Wolff, Adam Shorland, DannyS712, những người khác và các biên dịch viên translatewiki.net.
MediaWiki là phần mềm tự do; bạn được phép tái phân phối và/hoặc sửa đổi nó theo những điều khoản của Giấy phép Công cộng GNU do Quỹ Phần mềm Tự do xuất bản; phiên bản 2 hay bất kỳ phiên bản nào mới hơn nào của Giấy phép (tùy bạn lựa chọn).
MediaWiki được phân phối với hy vọng rằng nó sẽ hữu ích, nhưng KHÔNG CÓ BẤT KỲ MỘT BẢO ĐẢM NÀO, ngay cả những bảo đảm ngụ ý cho TÍNH THƯƠNG MẠI hoặc PHÙ HỢP VỚI MỤC ĐÍCH ĐẶC BIỆT NÀO ĐÓ. Xem Giấy phép Công cộng GNU để biết thêm chi tiết.
Có lẽ bạn đã nhận được bản sao Giấy phép Công cộng GNU đi kèm với chương trình này; nếu không, hãy viết thư đến:
Free Software Foundation, Inc.
51 Franklin St., Fifth Floor
Boston, MA 02110-1301
USA
hoặc
đọc nó trực tuyến.
Thư viện | Phiên bản | Giấy phép | Miêu tả | Tác giả |
---|
brick/math | 0.9.3 | MIT | Arbitrary-precision arithmetic library | |
composer/package-versions-deprecated | 1.11.99.5 | MIT | Composer plugin that provides efficient querying for installed package versions (no runtime IO) | Marco Pivetta và Jordi Boggiano |
composer/semver | 3.2.4 | MIT | Semver library that offers utilities, version constraint parsing and validation. | Nils Adermann, Jordi Boggiano và Rob Bast |
composer/spdx-licenses | 1.5.4 | MIT | SPDX licenses list and validation library. | Nils Adermann, Jordi Boggiano và Rob Bast |
composer/xdebug-handler | 1.4.6 | MIT | Restarts a process without Xdebug. | John Stevenson |
cssjanus/cssjanus | 1.3.0 | Apache-2.0 | Convert CSS stylesheets between left-to-right and right-to-left. | Trevor Parscal, Roan Kattouw và Timo Tijhof |
dnoegel/php-xdg-base-dir | 0.1.1 | MIT | implementation of xdg base directory specification for php | |
doctrine/cache | 1.13.0 | MIT | PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others. | Guilherme Blanco, Roman Borschel, Benjamin Eberlei, Jonathan Wage và Johannes Schmitt |
doctrine/dbal | 3.0.0 | MIT | Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management. | Guilherme Blanco, Roman Borschel, Benjamin Eberlei và Jonathan Wage |
doctrine/event-manager | 1.1.2 | MIT | The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects. | Guilherme Blanco, Roman Borschel, Benjamin Eberlei, Jonathan Wage, Johannes Schmitt và Marco Pivetta |
doctrine/instantiator | 1.4.1 | MIT | A small, lightweight utility to instantiate objects in PHP without invoking their constructors | Marco Pivetta |
doctrine/sql-formatter | 1.1.1 | MIT | a PHP SQL highlighting library | Jeremy Dorn |
felixfbecker/advanced-json-rpc | 3.2.1 | ISC | A more advanced JSONRPC implementation | Felix Becker |
firebase/php-jwt | 6.3.0 | BSD-3-Clause | A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec. | Neuman Vong và Anant Narayanan |
giorgiosironi/eris | 0.10.0 | MIT | PHP library for property-based testing. Integrates with PHPUnit. | Gabriele Lana, Giorgio Sironi và Mirko Bonadei |
google/auth | 1.23.0 | Apache-2.0 | Google Auth Library for PHP | |
google/cloud | 0.136.0 | Apache-2.0 | Google Cloud Client Library | Dave Supplee và John Pedrie |
google/common-protos | 1.4.0 | Apache-2.0 | Google API Common Protos for PHP | |
google/crc32 | 0.1.0 | Apache-2.0 | Various CRC32 implementations | Andrew Brampton |
google/gax | 1.17.0 | BSD-3-Clause | Google API Core for PHP | |
google/grpc-gcp | 0.2.0 | Apache-2.0 | gRPC GCP library for channel management | |
google/longrunning | 0.2.0 | Apache-2.0 | Google LongRunning Client for PHP | |
google/protobuf | 3.21.7 | BSD-3-Clause | proto library for PHP | |
grpc/grpc | 1.42.0 | Apache-2.0 | gRPC library for PHP | |
guzzlehttp/guzzle | 7.2.0 | MIT | Guzzle is a PHP HTTP client library | Michael Dowling và Márk Sági-Kazár |
guzzlehttp/promises | 1.5.2 | MIT | Guzzle promises library | Graham Campbell, Michael Dowling, Tobias Nyholm và Tobias Schultze |
guzzlehttp/psr7 | 1.9.0 | MIT | PSR-7 message implementation that also provides common utility methods | Graham Campbell, Michael Dowling, George Mponos, Tobias Nyholm, Márk Sági-Kazár và Tobias Schultze |
hamcrest/hamcrest-php | 2.0.1 | BSD-3-Clause | This is the PHP port of Hamcrest Matchers | |
johnkary/phpunit-speedtrap | 3.3.0 | MIT | Find and report on slow tests in your PHPUnit test suite | John Kary |
justinrainbow/json-schema | 5.2.12 | MIT | A library to validate a json schema. | Bruno Prieto Reis, Justin Rainbow, Igor Wiedler và Robert Schönthal |
league/oauth2-client | 2.6.0 | MIT | OAuth 2.0 Client Library | Alex Bilbie và Woody Gilk |
league/oauth2-facebook | 2.0.5 | MIT | Facebook OAuth 2.0 Client Provider for The PHP League OAuth2-Client | Sammy Kaye Powers |
liuggio/statsd-php-client | 1.0.18 | MIT | Statsd (Object Oriented) client library for PHP | Giulio De Donato |
mediawiki/mediawiki-codesniffer | 35.0.0 | GPL-2.0-or-later | MediaWiki CodeSniffer Standards | |
mediawiki/mediawiki-phan-config | 0.10.6 | GPL-2.0-or-later | Standard MediaWiki phan configuration | MediaWiki developers |
mediawiki/oauthclient | 1.1.0 | GPL-3.0-or-later | PHP OAuth client for use with Wikipedia and other MediaWiki-based wikis running the OAuth extension | Andy Smith, Chris Steipp và Bryan Davis |
mediawiki/phan-taint-check-plugin | 3.2.1 | GPL-2.0-or-later | A Phan plugin to do security checking | Brian Wolff và Daimona Eaytoy |
microsoft/tolerant-php-parser | 0.0.23 | MIT | Tolerant PHP-to-AST parser designed for IDE usage scenarios | Rob Lourens |
monolog/monolog | 2.2.0 | MIT | Sends your logs to files, sockets, inboxes, databases and various web services | Jordi Boggiano |
myclabs/deep-copy | 1.11.0 | MIT | Create deep copies (clones) of your objects | |
netresearch/jsonmapper | 3.1.1 | OSL-3.0 | Map nested JSON structures onto PHP classes | Christian Weiske |
nikic/php-parser | 4.10.2 | BSD-3-Clause | A PHP parser written in PHP | Nikita Popov |
nmred/kafka-php | 0.1.5 | BSD-3-Clause | Kafka client for php | |
oojs/oojs-ui | 0.41.3 | MIT | Provides library of common widgets, layouts, and windows. | Bartosz Dziewoński, Ed Sanders, James D. Forrester, Kirsten Menger-Anderson, Kunal Mehta, Prateek Saxena, Roan Kattouw, Rob Moen, Timo Tijhof và Trevor Parscal |
paragonie/random_compat | 9.99.100 | MIT | PHP 5.x polyfill for random_bytes() and random_int() from PHP 7 | Paragon Initiative Enterprises |
pear/console_getopt | 1.4.3 | BSD-2-Clause | More info available on: http://pear.php.net/package/Console_Getopt | Andrei Zmievski, Stig Bakken và Greg Beaver |
pear/mail | 1.4.1 | BSD-2-Clause | Class that provides multiple interfaces for sending emails. | Chuck Hagenbuch, Richard Heyes và Aleksander Machniak |
pear/mail_mime | 1.10.9 | BSD-3-clause | Mail_Mime provides classes to create MIME messages | Cipriano Groenendal và Aleksander Machniak |
pear/net_smtp | 1.9.2 | BSD-2-Clause | An implementation of the SMTP protocol | Jon Parise và Chuck Hagenbuch |
pear/net_socket | 1.2.2 | PHP License | More info available on: http://pear.php.net/package/Net_Socket | Chuck Hagenbuch, Aleksander Machniak và Stig Bakken |
pear/net_url2 | 2.2.2 | BSD-3-Clause | Class for parsing and handling URL. Provides parsing of URLs into their constituent parts (scheme, host, path etc.), URL generation, and resolving of relative URLs. | David Coallier, Tom Klingenberg và Christian Schmidt |
pear/pear-core-minimal | 1.10.11 | BSD-3-Clause | Minimal set of PEAR core files to be used as composer dependency | Christian Weiske |
pear/pear_exception | 1.0.2 | BSD-2-Clause | The PEAR Exception base class. | Helgi Thormar và Greg Beaver |
phan/phan | 3.2.6 | MIT | A static analyzer for PHP | Tyson Andre, Rasmus Lerdorf và Andrew S. Morrison |
phar-io/manifest | 2.0.3 | BSD-3-Clause | Component for reading phar.io manifest information from a PHP Archive (PHAR) | Arne Blankerts, Sebastian Heuer và Sebastian Bergmann |
phar-io/version | 3.2.1 | BSD-3-Clause | Library for handling version information and constraints | Arne Blankerts, Sebastian Heuer và Sebastian Bergmann |
php-parallel-lint/php-console-color | 0.3 | BSD-2-Clause | | Jakub Onderka |
php-parallel-lint/php-console-highlighter | 0.5 | MIT | Highlight PHP code in terminal | Jakub Onderka |
php-parallel-lint/php-parallel-lint | 1.2.0 | BSD-2-Clause | This tool check syntax of PHP files about 20x faster than serial check. | Jakub Onderka |
phpdocumentor/reflection-common | 2.2.0 | MIT | Common reflection classes used by phpdocumentor to reflect the code structure | Jaap van Otterdijk |
phpdocumentor/reflection-docblock | 5.3.0 | MIT | With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock. | Mike van Riel và Jaap van Otterdijk |
phpdocumentor/type-resolver | 1.6.1 | MIT | A PSR-5 based resolver of Class names, Types and Structural Element Names | Mike van Riel |
phpunit/php-code-coverage | 7.0.15 | BSD-3-Clause | Library that provides collection, processing, and rendering functionality for PHP code coverage information. | Sebastian Bergmann |
phpunit/php-file-iterator | 2.0.5 | BSD-3-Clause | FilterIterator implementation that filters files based on a list of suffixes. | Sebastian Bergmann |
phpunit/php-text-template | 1.2.1 | BSD-3-Clause | Simple template engine. | Sebastian Bergmann |
phpunit/php-timer | 2.1.3 | BSD-3-Clause | Utility class for timing | Sebastian Bergmann |
phpunit/php-token-stream | 4.0.4 | BSD-3-Clause | Wrapper around PHP's tokenizer extension. | Sebastian Bergmann |
phpunit/phpunit | 8.5.30 | BSD-3-Clause | The PHP Unit Testing framework. | Sebastian Bergmann |
pimple/pimple | 3.3.1 | MIT | Pimple, a simple Dependency Injection Container | Fabien Potencier |
pleonasm/bloom-filter | 1.0.2 | BSD-2-Clause | A pure PHP implementation of a Bloom Filter | Matthew Nagi |
psr/cache | 1.0.1 | MIT | Common interface for caching libraries | PHP-FIG |
psr/container | 1.0.0 | MIT | Common Container Interface (PHP FIG PSR-11) | PHP-FIG |
psr/http-client | 1.0.1 | MIT | Common interface for HTTP clients | PHP-FIG |
psr/http-factory | 1.0.1 | MIT | Common interfaces for PSR-7 HTTP message factories | PHP-FIG |
psr/http-message | 1.0.1 | MIT | Common interface for HTTP messages | PHP-FIG |
psr/log | 1.1.3 | MIT | Common interface for logging libraries | PHP-FIG |
psy/psysh | 0.10.5 | MIT | An interactive shell for modern PHP. | Justin Hileman |
ramsey/collection | 1.2.2 | MIT | A PHP library for representing and manipulating collections. | Ben Ramsey |
ramsey/uuid | 4.2.3 | MIT | A PHP library for generating and working with universally unique identifiers (UUIDs). | |
rize/uri-template | 0.3.4 | MIT | PHP URI Template (RFC 6570) supports both expansion & extraction | Marut K |
sabre/event | 5.1.4 | BSD-3-Clause | sabre/event is a library for lightweight event-based programming | Evert Pot |
sebastian/code-unit-reverse-lookup | 1.0.2 | BSD-3-Clause | Looks up which function or method a line of code belongs to | Sebastian Bergmann |
sebastian/comparator | 3.0.5 | BSD-3-Clause | Provides the functionality to compare PHP values for equality | Sebastian Bergmann, Jeff Welch, Volker Dusch và Bernhard Schussek |
sebastian/diff | 3.0.3 | BSD-3-Clause | Diff implementation | Sebastian Bergmann và Kore Nordmann |
sebastian/environment | 4.2.4 | BSD-3-Clause | Provides functionality to handle HHVM/PHP environments | Sebastian Bergmann |
sebastian/exporter | 3.1.5 | BSD-3-Clause | Provides the functionality to export PHP variables for visualization | Sebastian Bergmann, Jeff Welch, Volker Dusch, Adam Harvey và Bernhard Schussek |
sebastian/global-state | 3.0.2 | BSD-3-Clause | Snapshotting of global state | Sebastian Bergmann |
sebastian/object-enumerator | 3.0.4 | BSD-3-Clause | Traverses array structures and object graphs to enumerate all referenced objects | Sebastian Bergmann |
sebastian/object-reflector | 1.1.2 | BSD-3-Clause | Allows reflection of object attributes, including inherited and non-public ones | Sebastian Bergmann |
sebastian/recursion-context | 3.0.1 | BSD-3-Clause | Provides functionality to recursively process PHP variables | Sebastian Bergmann, Jeff Welch và Adam Harvey |
sebastian/resource-operations | 2.0.2 | BSD-3-Clause | Provides a list of PHP built-in functions that operate on resources | Sebastian Bergmann |
sebastian/type | 1.1.4 | BSD-3-Clause | Collection of value objects that represent the types of the PHP type system | Sebastian Bergmann |
sebastian/version | 2.0.1 | BSD-3-Clause | Library that helps with managing the version number of Git-hosted PHP projects | Sebastian Bergmann |
seld/jsonlint | 1.8.3 | MIT | JSON Linter | Jordi Boggiano |
squizlabs/php_codesniffer | 3.5.8 | BSD-3-Clause | PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards. | Greg Sherwood |
symfony/console | 5.4.13 | MIT | Eases the creation of beautiful and testable command line interfaces | Fabien Potencier và Symfony Community |
symfony/deprecation-contracts | 2.5.2 | MIT | A generic function and convention to trigger deprecation notices | Nicolas Grekas và Symfony Community |
symfony/polyfill-intl-grapheme | 1.26.0 | MIT | Symfony polyfill for intl's grapheme_* functions | Nicolas Grekas và Symfony Community |
symfony/polyfill-intl-normalizer | 1.26.0 | MIT | Symfony polyfill for intl's Normalizer class and related functions | Nicolas Grekas và Symfony Community |
symfony/polyfill-php73 | 1.26.0 | MIT | Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions | Nicolas Grekas và Symfony Community |
symfony/polyfill-php80 | 1.26.0 | MIT | Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions | Ion Bazan, Nicolas Grekas và Symfony Community |
symfony/polyfill-php81 | 1.26.0 | MIT | Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions | Nicolas Grekas và Symfony Community |
symfony/service-contracts | 2.2.0 | MIT | Generic abstractions related to writing services | Nicolas Grekas và Symfony Community |
symfony/string | 5.4.13 | MIT | Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way | Nicolas Grekas và Symfony Community |
symfony/var-dumper | 5.4.13 | MIT | Provides mechanisms for walking through any arbitrary PHP variable | Nicolas Grekas và Symfony Community |
symfony/yaml | 5.4.12 | MIT | Loads and dumps YAML files | Fabien Potencier và Symfony Community |
theseer/tokenizer | 1.2.1 | BSD-3-Clause | A small library for converting tokenized PHP source code into XML and potentially other formats | Arne Blankerts |
webmozart/assert | 1.11.0 | MIT | Assertions to validate method input/output with nice error messages. | Bernhard Schussek |
wikimedia/assert | 0.5.0 | MIT | Provides runtime assertions | Daniel Kinzler và Thiemo Kreuz |
wikimedia/at-ease | 2.1.0 | GPL-2.0-or-later | Safe replacement to @ for suppressing warnings. | Tim Starling và MediaWiki developers |
wikimedia/base-convert | 2.0.1 | GPL-2.0-or-later | Convert an arbitrarily-long string from one numeric base to another, optionally zero-padding to a minimum column width. | Brion Vibber và Tyler Romeo |
wikimedia/cdb | 1.4.1 | GPL-2.0+ | Constant Database (CDB) wrapper library for PHP. Provides pure-PHP fallback when dba_* functions are absent. | Daniel Kinzler, Tim Starling, Chad Horohoe và Ori Livneh |
wikimedia/cldr-plural-rule-parser | 2.0.0 | GPL-2.0-or-later | Evaluates plural rules specified in the CLDR project notation. | Tim Starling và Niklas Laxström |
wikimedia/common-passwords | 0.3.0 | MIT | List of the 100,000 most commonly used passwords | Sam Reed |
wikimedia/composer-merge-plugin | 2.0.1 | MIT | Composer plugin to merge multiple composer.json files | Bryan Davis |
wikimedia/html-formatter | 3.0.1 | GPL-2.0-or-later | Performs transformations of HTML by wrapping around libxml2 and working around its countless bugs. | MediaWiki contributors |
wikimedia/ip-set | 3.0.0 | GPL-2.0-or-later | Efficiently match IP addresses against a set of CIDR specifications. | Brandon Black |
wikimedia/ip-utils | 3.0.2 | GPL-2.0-or-later | Functions and constants to play with IP addresses and ranges | MediaWiki developers |
wikimedia/less.php | 3.1.0 | Apache-2.0 | PHP port of the Javascript version of LESS http://lesscss.org (Originally maintained by Josh Schmidt) | Josh Schmidt, Matt Agar và Martin Jantošovič |
wikimedia/minify | 2.2.4 | Apache-2.0 | Minification of JavaScript code and CSS stylesheets. | Paul Copperman, Trevor Parscal, Timo Tijhof và Roan Kattouw |
wikimedia/object-factory | 3.0.0 | GPL-2.0-or-later | Construct objects from configuration instructions | Bryan Davis |
wikimedia/parsoid | 0.13.1 | GPL-2.0-or-later | Parsoid, a bidirectional parser between wikitext and HTML5 | Wikimedia Parsing Team and the broader MediaWiki community |
wikimedia/php-session-serializer | 2.0.0 | GPL-2.0-or-later | Provides methods like PHP's session_encode and session_decode that don't mess with $_SESSION | Brad Jorsch |
wikimedia/purtle | 1.0.7 | GPL-2.0-or-later | Fast streaming RDF serializer | Daniel Kinzler, Stanislav Malyshev, C. Scott Ananian và Thiemo Kreuz |
wikimedia/relpath | 2.1.1 | MIT | Compute a relative filepath between two paths. | Ori Livneh |
wikimedia/remex-html | 2.2.2 | MIT | Fast HTML 5 parser | Tim Starling |
wikimedia/request-timeout | 1.1.0 | MIT | Request timeout library for Excimer with plain PHP fallback | Tim Starling |
wikimedia/running-stat | 1.2.1 | GPL-2.0+ | PHP implementations of online statistical algorithms | Ori Livneh |
wikimedia/scoped-callback | 3.0.0 | GPL-2.0-or-later | Class for asserting that a callback happens when a dummy object leaves scope | Aaron Schulz |
wikimedia/services | 2.0.1 | GPL-2.0-or-later | Generic service to manage named services using lazy instantiation based on instantiator callback functions | Daniel Kinzler |
wikimedia/shellbox | 1.0.4 | MIT | Library and server for containerized shell execution | Tim Starling, Kunal Mehta và Max Semenik |
wikimedia/testing-access-wrapper | 2.0.0 | GPL-2.0-or-later | A simple helper class to access non-public elements of a class when testing. | Adam Roses Wight, Brad Jorsch và Gergő Tisza |
wikimedia/timestamp | 3.0.0 | GPL-2.0-or-later | Creation, parsing, and conversion of timestamps | Tyler Romeo |
wikimedia/utfnormal | 3.0.2 | GPL-2.0-or-later | Contains Unicode normalization routines, including both pure PHP implementations and automatic use of the 'intl' PHP extension when present | Brion Vibber |
wikimedia/wait-condition-loop | 2.0.1 | GPL-2.0-or-later | Wait loop that reaches a condition or times out | Aaron Schulz |
wikimedia/wikipeg | 2.0.5 | MIT | Parser generator for JavaScript and PHP | |
wikimedia/wrappedstring | 3.2.0 | MIT | Automatically compact sequentially-outputted strings that share a common prefix / suffix pair. | Timo Tijhof |
wikimedia/xmp-reader | 0.8.1 | GPL-2.0-or-later | Reader for XMP data containing properties relevant to images | Brian Wolff |
wikimedia/zest-css | 1.1.5 | MIT | Fast, lightweight, extensible CSS selector engine for PHP | Christopher Jeffrey và C. Scott Ananian |
wmde/hamcrest-html-matchers | 0.1.1 | LGPL-2.1 | Set of Hamcrest matchers for HTML assertrions | Aleksey Bekh-Ivanov |
zordius/lightncandy | 1.2.5 | MIT | An extremely fast PHP implementation of handlebars ( http://handlebarsjs.com/ ) and mustache ( http://mustache.github.io/ ). | Zordius Chen |
anchorencode, basepagename, basepagenamee, bidi, canonicalurl, canonicalurle, cascadingsources, choose, defaultsort, displaytitle, filepath, formatdate, formatnum, fullpagename, fullpagenamee, fullurl, fullurle, gender, grammar, int, language, lc, lcfirst, localurl, localurle, namespace, namespacee, namespacenumber, ns, nse, numberingroup, numberofactiveusers, numberofadmins, numberofarticles, numberofedits, numberoffiles, numberofpages, numberofusers, padleft, padright, pageid, pagename, pagenamee, pagesincategory, pagesize, plural, protectionexpiry, protectionlevel, revisionday, revisionday2, revisionid, revisionmonth, revisionmonth1, revisiontimestamp, revisionuser, revisionyear, rootpagename, rootpagenamee, special, speciale, subjectpagename, subjectpagenamee, subjectspace, subjectspacee, subpagename, subpagenamee, tag, talkpagename, talkpagenamee, talkspace, talkspacee, uc, ucfirst và urlencode